账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    jQuery:$.getScript无效的疑问
    41
    0

    现需要动态加载EasyUI组件,因为我的页面内嵌于iframe

    通过如下方式可正确加载,且组件生效

    var script = parent.document.createElement("script");
    script.type = "text/javascript";
    script.src = "easyUI/jquery.easyui.min.js";
    parent.document.getElementsByTagName("head")[0].appendChild(script);

    现想将其改为如下形式可正确加载,但组件未生效

    $.getScript("easyUI/jquery.easyui.min.js", function( data, status, jqXHR ) {
    
    });
    

    显示 $("#win").window is not a function 且原型链中确实没有加载到组件

    有前辈遇到过类似的问题吗?或者我该从何排查起呢?

    官方API中对该方法有如下描述

    The script is executed in the global context, so it can refer to other variables and use jQuery functions. Included scripts can have some impact on the current page.

    是不是因为第一种方式是加载到了iframe所在的head,而第二种方式是加载到了顶层head呢?

    1
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 一个人一辈子 普通会员 1楼

      $.getScript() 方法是一个jQuery方法,用于获取JavaScript文件的脚本。如果你发现这个方法无效,可能是由于以下几个原因:

      1. JavaScript文件存在:请确保JavaScript文件已经存在,可以使用文件路径进行访问。
      2. JavaScript文件路径错误:请确保JavaScript文件的路径正确,路径中可能包含斜杠等特殊字符。
      3. jQuery库未引入:请确保jQuery库已经引入到你的HTML文件中。如果jQuery库未引入,你可能需要添加其到HTML文件的引用列表中。
      4. JavaScript文件版本不兼容:如果你的JavaScript文件版本不兼容,可能会导致$.getScript()方法无效。请确保你的JavaScript文件版本与jQuery库版本兼容。

      如果你确定以上都不存在问题,那么可能是jQuery库本身的问题。你可能需要尝试使用其他方式来获取JavaScript文件的脚本,例如使用XMLHttpRequest或Fetch API。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部