因为公司需要,花了2天时间学习了一下jquery的基础,就开始工作了。昨天工作的时候碰到了jquery的问题,部分代码如下:
$("#feedDiv div").live("click",unfold);
//unfold方法
function unfold(){
$(this).html("").hide();
$(this).html(glob_templateContentJson[$(this).attr("id")]);
$(this).show("slow");
$(this).die("click",unfold); //解除click事件
}
结果发现$(this).die("click",unfold); 竟然没作用,很奇怪。然后把代码换成下面这样竟然问题就解决了:
function unfold(){
$(this).html("").hide();
$(this).html(glob_templateContentJson[$(this).attr("id")]);
$(this).show("slow");
$("#"+$(this).attr("id")).die("click",unfold); //解除click事件
}
通过ID获取到对象就竟然die就成功了。而通过this竟然不行。。
虽然问题解决了,但是不明白使用die,为什么 $(this) 就不行了呢。。
$("#feedDiv div").live("click",unfold);
//unfold方法
function unfold(){
$(this).html("").hide();
$(this).html(glob_templateContentJson[$(this).attr("id")]);
$(this).show("slow");
$(this).die("click",unfold); //解除click事件
}
结果发现$(this).die("click",unfold); 竟然没作用,很奇怪。然后把代码换成下面这样竟然问题就解决了:
function unfold(){
$(this).html("").hide();
$(this).html(glob_templateContentJson[$(this).attr("id")]);
$(this).show("slow");
$("#"+$(this).attr("id")).die("click",unfold); //解除click事件
}
通过ID获取到对象就竟然die就成功了。而通过this竟然不行。。
虽然问题解决了,但是不明白使用die,为什么 $(this) 就不行了呢。。