无法动态添加js文件

时间:2015-03-10 11:35:46

标签: jquery

如果从移动设备访问页面,我正在尝试动态添加js文件

这是我的代码

$(document).on('click', '.mybutton', function (e) {

    var ismobileornot = isMobile();

    if(ismobileornot)
    {
        $('head').append("<script type="text/javascript" charset="utf-8" src="js/cordova.js"></script>");
    }


});


function isMobile() {
 try {
    if(/Android|webOS|iPhone|iPad|iPod|pocket|psp|kindle|avantgo|blazer|midori|Tablet|Palm|maemo|plucker|phone|BlackBerry|symbian|IEMobile|mobile|ZuneWP7|Windows Phone|Opera Mini/i.test(navigator.userAgent)) {
     return true;
    };
    return false;
 } catch(e){ console.log("Error in isMobile"); return false; }
}

但我在浏览器控制台下收到错误

Uncaught SyntaxError: Unexpected identifier

http://jsfiddle.net/kgm9o693/49/

任何人都可以让我知道如何解决这个问题。

2 个答案:

答案 0 :(得分:1)

您可能需要先使用内置命令将script标记创建为对象,然后附加

    if(ismobileornot)
    {
        var script = document.createElement( 'script' );
        script.src = 'js/cordova.js';
        $('head').append(script);
    }

答案 1 :(得分:0)

您错误地放置了"。试试吧:

$('head').append("<script type='text/javascript' charset='utf-8' src='js/cordova.js'>\x3C/script>");