js笔记

如果你有一个div用来做输出控制台,因为内容是不断增加的,那你自然希望这个div或textarea能永远显示最下面一行:

var el = document.getElementById('someid');
el.scrollTop = el.scrollHeight;

你在setTimeout之类的时候,需要传递一个函数对象,任何传递句柄的设计都没考虑如何把参数也传进去,不止js,所以只能自己想办法:

//目标函数
function hello(args){ // code here }
//包裹函数,返回function function helloWithArgs(args){ return function(){ hello(args); } }
//正常调用 setInterval(hellowithargs(1111),1000)

1.7以前的jQuery都是用live来绑定未来元素的事件,1.7以后引入了on,1.9甚至直接就把live废除了。事实上,你直接把live改成on是不行的,文档很明确地说明on绑定的是当前页面上的元素,所以要实现跟以前的live一样的行为,需要严格按如下格式:

$(parent).on(evtname,child,fn);
//比如,绑定.item元素的click事件,这么写是不行的:
$('.item').on('click',function(){/*code here*/})
//随便找其一个父元素改成如下:
$('body').on('click','.item',function(){/*code here*/});
posted @ 2014-06-27 10:14  $walker  阅读(178)  评论(0编辑  收藏  举报