微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery getScript方法的内部过程

我试图了解getScript的内部过程.我知道它在内部使用$.get方法.我认为jQuery将一个脚本标记引用放入DOM中,以便能够执行该js文件,但是我找不到DOM中getScript的加载脚本的脚本引用.

那么jQuery如何在DOM中没有脚本标记引用的情况下执行加载的脚本?

$.getScript(‘gallery.js’)与$(‘< script src =“gallery.js”>‘)完全相同.appendTo(‘body’)?

解决方法

This is the interesting part in the source code.

jQuery似乎只接收文本并在全局范围内对其进行评估:

converters: {
    "text script": function( text ) {
        jQuery.globalEval( text );
        return text;
    }
}

如果您从其他域加载脚本,jQuery会添加一个新的脚本标记

head.insertBefore( script,head.firstChild );

但是在加载代码删除它:

// Remove the script
if ( head && script.parentNode ) {
    head.removeChild( script );
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐