这几个月一直在学习JS,对HTML不够重视,有些很基础的东西还没完全掌握,于是暴露了问题。
在看DOM元素属性时突然看到了id属性,不由得想起之前我竟然是这么来获取id的
$(‘#btn‘).on(‘click‘, function() { var id = $(this).attr(‘id‘); //... });
this指向被点击的dom元素,id的话这样取就好了
$(‘#btn‘).on(‘click‘, function() { var id = this.id; //... });
应该多使用DOM元素本身,因为每一次$()都会创建一个新的jQuery对象
然而有时我们想要用jQuery的各种方法时,可以这样
(function() { $.extend(jQuery, { temp: (function() { var temp = $({}); return function(element) { temp[0] = element; return temp; } })() }); })(); $(‘#btn‘).on(‘click‘, function() { var html = $.temp(this).next().html(); //... });
每次传入一个DOM元素都只是替换了temp这个jQuery对象里的DOM元素,而避免创建新的jQuery对象
由$(this).attr('id')引出的一点感想
时间: 2024-10-19 05:58:22