将Jquery动态加载到.js页面

时间:2010-04-13 10:15:53

标签: jquery dynamic load

请原谅我,如果我在这里很简单,我想创建一个人们可以从他们的网站访问的简单小部件 - 例如通过复制/过去像

<script language="javascript" src="test2.js"></script>
<div id="test"></div>

他们网页的任何地方。其中是通过Jquery和test2.js中的函数动态填充的。

如果JQuery实际上是“打印”在test2.js的页面上,我可以这样做,但是如果我尝试动态地包含/调用JQuery,我就无法使用任何JQuery函数。你如何通过javascript调用JQuery,然后让它与页面上的函数一起使用?

和/或有一种简单的方法可以动态添加&lt; div id="test"></div>吗?当然我可以body.append等,但只添加在页面的底部。有没有办法将.append放在脚本包含的位置

<script language="javascript" src="test2.js"></script>
实际上放了

希望我能做到。

2 个答案:

答案 0 :(得分:5)

function loadjscssfile(filename, filetype) {
        if (filetype == "js") { //if filename is a external JavaScript file
            var fileref = document.createElement('script')
            fileref.setAttribute("type", "text/javascript")
            fileref.setAttribute("src", filename)
        }
        else if (filetype == "css") { //if filename is an external CSS file
            var fileref = document.createElement("link")
            fileref.setAttribute("rel", "stylesheet")
            fileref.setAttribute("type", "text/css")
            fileref.setAttribute("href", filename)
        }
        if (typeof fileref != "undefined")
            document.getElementsByTagName("head")[0].appendChild(fileref)
    }

    loadjscssfile("jquery-1.4.2.js", "js") //dynamically load and add this .js file

你的jquery代码应该放在页面的底部,等待jquery库附加在头部

答案 1 :(得分:0)

关于您是否可以在脚本位置动态添加<div id="test"></div>的问题:

如果您在脚本中调用document.write,则会在脚本之后将此内容插入到文档中。

E.g:

<html>
<head></head>
<body>
   <div id="first">
       <div id="second">
           <script type="text/javascript">
               document.write('<h2>test</h2>');
           </script>
      </div>
   </div>
</body>
</html>

结果

<html>
<head></head>
<body>
   <div id="first">
       <div id="second">
           <script type="text/javascript">
               document.write('<h2>test</h2>');
           </script>
           <h2>test</h2>
      </div>
   </div>
</body>
</html>