根据窗口大小加载jquery

时间:2014-04-29 02:53:27

标签: javascript jquery

我是javascript的新手并且正在努力解决这个基本问题 - 我只想在窗口大小低于某个阈值时加载jQuery(即移动版本不需要它)。对于桌面版本,jQuery必须加载<head>而不是<body>,因为首屏内容需要它。

我测试了循环,并且我在页面上打印了网页宽度,但是jQuery没有加载。我确定它是一个基本的语法问题,但我无法看到它!非常感激任何的帮助。 :)

   <script type="text/javascript"> 
        function loadjsfile(filename){
         var fileref=document.createElement('script');
         fileref.setAttribute("type","text/javascript");
         fileref.setAttribute("src", filename);
         }

        var w=window.innerWidth
        || document.documentElement.clientWidth
        || document.body.clientWidth;
            if (w > 899){
                document.write("screen Width: " + w);
                loadjsfile("http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js");
                }
   </script>

1 个答案:

答案 0 :(得分:2)

您已经创建了包含脚本标记对象的fileref变量,但您从未将其添加到DOM中,因此它永远不会加载。

function loadjsfile(filename){
    var fileref = document.createElement('script');
    fileref.setAttribute("type","text/javascript");
    fileref.setAttribute("src", filename);

    //add this line
    document.getElementsByTagName('head')[0].appendChild(fileref);
}