您现在的位置是:首页 > 电脑技术查询 > web开发

发现一个很奇怪的jQuery有关问题,郁闷了很久了

编辑:chaxungu时间:2022-10-02 23:23:46分类:web开发

发现一个很奇怪的jQuery问题,郁闷了很久了。
发现一个很奇怪的jQuery问题,请教大家了:

JScript codevar $a = $("<div>");var $b = $("<span>").html("bbb");$b.extend({ i : 123 });$a.extend({ $b : $b }); $b.appendTo($a);$a.appendTo(document.body);$a.$b.click(function(){ alert($(this).i); });虽然打印不出123,总是打印出来是undefined,为什么这样有谁知道原因吗,另外能否提供解决办法,谢谢。

顺便说一下alert($(this).html());可以打印出"bbb"。

------解决方案--------------------
HTML code<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script><script>window.onload=function(){ var $a = $("<div>"); var $b = $("<span>").html("bbb"); $b.extend({ i : 123 }); $a.extend({ $b : $b }); $b.appendTo($a); $a.appendTo(document.body); $a.$b.click((function(obj){ return function(){alert(obj.i)}; })($b));}</script>
------解决方案--------------------
JScript code$a.$b.click((function(obj){ return function(){alert(obj.i)}; })($b));