问答详情
源自:-

老师的detach()讲义有歧义啊

老师,你的讲义里写到:

当然这里要特别注意,detach方法是JQuery特有的,所以它只能处理通过JQuery的方法绑定的事件或者数据。

言外之意是通过原生JS方法给DOM元素绑定的事件或数据是不能通过detach()方法进行保存的。

    document.getElementsByTagName("p")[0].addEventListener("click",function(event){
        alert("通过原生JS方法添加的事件");
    });

但是通过测试,发现以上事件还是可以被detach()保存的。

那您的讲义这里这句话是什么意思呀?

提问者:小王子抓猫咪 2016-03-18 18:51

个回答

  • 艾伦Aaron
    2016-03-22 14:52:43

    因为jquery内部自己有一个 数据对象 data的结构,用来最这些数据的保存

    $ele.on("click",fn)     jquery=>内部    data = {'1':fn }

    这样数据被缓存起来了,所以进行操作的时候,都能data取到这个数据


    原生的,没有这些东西................