jQuery .unload()不起作用,但.load()可以

时间:2015-09-26 09:02:01

标签: javascript jquery

我正在尝试使用jquery动态加载和卸载内容。

.load()完美地运行但由于某种原因我不能用.unload()做同样的事情。我不确定我做错了什么。

这是我的代码

$( document ).ready( function() {
    $( 'a.dynamicLoad' ).click( function( e ) {
        e.preventDefault();   // prevent the browser from following the link
        e.stopPropagation();  // prevent the browser from following the link

        $( '.content-wrap' ).load('projects/project1.html');
    });

    $('#back').click(function(){
        $( '.content-wrap' ).unload('projects/project1.html');
    });
});

1 个答案:

答案 0 :(得分:6)

jquery中的卸载功能不用于此目的。它用于设置窗口卸载事件,例如退出页面时。

https://api.jquery.com/unload/

  

当用户离开页面时,会将卸载事件发送到窗口元素。这可能意味着很多事情之一。用户可以单击链接离开页面,或在地址栏中键入新URL。前进和后退按钮将触发事件。关闭浏览器窗口将导致触发事件。即使页面重新加载也会首先创建一个卸载事件。

如果你只需要清除元素,将innerHTML设置为空就足够了。

$( '.content-wrap' ).html('');

请参阅http://jsfiddle.net/dm7hhnjc/

关于OP,jquery中的这种加载和卸载范围可能会导致任何人误入歧途,因为除非您熟悉window.onunload已经

,否则命名方案本质上是混乱的。