发现一个很奇怪的jQuery有关问题,郁闷了很久了
发现一个很奇怪的jQuery问题,郁闷了很久了。
发现一个很奇怪的jQuery问题,请教大家了:
虽然打印不出123,总是打印出来是undefined,为什么这样有谁知道原因吗,另外能否提供解决办法,谢谢。
顺便说一下alert($(this).html());可以打印出"bbb"。
------解决方案--------------------
发现一个很奇怪的jQuery问题,请教大家了:
- JScript code
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(){ 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));