zoukankan      html  css  js  c++  java
  • 坑爹的javascript,技巧!技巧!

     1       interval =setInterval(sendMessage,3000);
     2      function sendMessage(){
     3          //每隔5妙中向服务器发送ajax 请求
     4          $.post(
     5                  "test",
     6                  {"city[0]":'shanghai',"city[1]":'beijing',"city[2]":'chengdu'}
     7                  ,function(result){
     8                     // $("#username-input").val(result);
     9                      console.log(result);
    10                     result = eval("("+result+")");
    11                      console.log(result);
    12                      $("#price-shanghai").html(result.city[0]) ;
    13                      $("#price-beijing").html(result.city[1])
    14                      $("#price-chengdu").html(result.city[2]);
    15          });
    16      }
    setInterval的函数名称不能跟上()否则只能执行一次,被坑惨了!!补充这是因为函数的作用域的问题
    关于对代码的封装
      1、原则上每个方法只能做一件事情,并且经过测试。
      2、使用对象的方法封装成属性和方法的形式
      
    1 var Obj = {
    2     var a;
    3     var b = function(){
    4       ...
    5   }   
    6 
    7 }

     调用就使用obj.b()

      3、封装jquery 插件

      

     1 // plugin definition    
     2 $.fn.hilight = function(options) {    
     3   var defaults = {    
     4     foreground: 'red',    
     5     background: 'yellow'    
     6   };    
     7   // Extend our default options with those provided.    
     8   var opts = $.extend(defaults, options);    
     9   // Our plugin implementation code goes here.    
    10 };    
    11 我们的插件可以这样被调用:  
    12 $('#myDiv').hilight({    
    13   foreground: 'blue'    
    14 }); 

      有两种封装的方式:

      

    jQuery为开发插件提拱了两个方法,分别是:

    jQuery.fn.extend(object);  给jQuery对象添加方法。
    jQuery.extend(object);  为扩展jQuery类本身.为类添加新的方法。

    一个方法名代表的是这个方法的指针位置,加上括号如functionName()就是执行这个方法。

    绑定事件要注意是否已经存在这个元素,不存在使用live()方法

    一个方法直接写方法名,意思是这个方法的指针位置;加上括号那就是马上执行这个方法
     
     清除事件队列的方法

      $('.stop').live('click',function(){
        $('.box').clearQueue('slideList');
      })

      mouseover 和mouseenter的区别为,mousenter不会冒泡,也就是如果被子元素挡住了就不会被触发,mouseover就会被触发。就这么简单

      如果表单 设置了 

    auto; 

    会造成无法提交

  • 相关阅读:
    HDU 1058 Humble Numbers
    HDU 1160 FatMouse's Speed
    HDU 1087 Super Jumping! Jumping! Jumping!
    HDU 1003 Max Sum
    HDU 1297 Children’s Queue
    UVA1584环状序列 Circular Sequence
    UVA442 矩阵链乘 Matrix Chain Multiplication
    DjangoModels修改后出现You are trying to add a non-nullable field 'download' to book without a default; we can't do that (the database needs something to populate existing rows). Please select a fix:
    opencv做的简单播放器
    c++文件流输入输出
  • 原文地址:https://www.cnblogs.com/linksgo2011/p/2820554.html
Copyright © 2011-2022 走看看