$("#btn").bind("click",{"id":"111","name":"aaa"}, getData); function getData(d) { alert(d.data.id); alert(d.data["name"]) }
2 setTimeout里怎么调用对象的方法
setTimeout( function(self) { return function() { alert(self);//这里面用self代替this } }(this), 1000);
3 this和$(this)的区别
概念: this表示当前的上下文对象是一个html对象,可以调用html对象所拥有的属性和方法,$(this),代表的上下文对象是一个jquery的上下文对象,可以调用jquery的方法和属性值。 $()生成的是什么呢?实际上$()=jquery(),就是说返回的是一个jquery的对象。 通常我们为了简便直接使用$()。实际上,该函数省略了一个参数context。根据选择器选取匹配的对象即$(selector, context),以jQuery包装集的形式返回。context可以是Dom对象集合或jQuery包装集,传入则表示要从context中选择匹配的对象,不传入则表示范围为文档对象(即页面全部对象),即$(selector)=$(selector,document)。 this指的是,调用函数的那个html对象。 例子: $("#textbox").hover( function() { this.title = "Test"; }, fucntion() { this.title = "OK”; } ); 这里的this其实是一个Html元素(textbox),this是js中的。textbox有text属性,所以这样写没什么问题。 $("#textbox").hover( function() { $(this).title = "Test"; }, function() { $(this).title = "OK"; } ); 这里的$(this)是一个JQuery对象,而jQuery对象沒有title 属性,因此这样写是错误的。 总结: this,表示当前的上下文对象是一个html对象,可以调用html对象所拥有的属性和方法。 $(this),代表的上下文对象是一个jquery的上下文对象,可以调用jquery的方法和属性值。
4 app字体自适应
//使用rem策略,不断更新html的fontsize (function(){ function sizeHtml(){ var size = $(window).width()/16; size = size>40?40:size; $("html").css("font-size",size+"px"); } sizeHtml(); $(window).resize(function(){ sizeHtml(); }) })()