我关注this tutorial to create a tabbed view。我们可以看到,我们在<head>
部分中包含了 四个外部JS文件 。
<script type="text/javascript" src="http://yui.yahooapis.com/2.5.0/build/yahoo-dom-event/yahoo-dom-event.js"></script>
<script type="text/javascript" src="http://yui.yahooapis.com/2.5.0/build/element/element-beta-min.js"></script>
<script type="text/javascript" src="http://yui.yahooapis.com/2.5.0/build/connection/connection-min.js"></script>
<script type="text/javascript" src="http://yui.yahooapis.com/2.5.0/build/tabview/tabview-min.js"></script>
然后在<body>
中,与标签相关的唯一JS
代码是
<script type="text/javascript">
var myTabs = new YAHOO.widget.TabView("content-explorer");
</script>
问题: -
由于某些原因,我无法在<head>
标记中添加任何代码。 那么有什么办法可以在<{em> external JS files
之前将JS
包含在var myTabs = new YAHOO.widget.TabView("content-explorer");
代码中吗?
答案 0 :(得分:1)
有几种方法可以做到这一点,但最简单的方法是在JavaScript中创建一个script
元素,并在运行时将其附加到文档中。
为简单起见,我已在此处循环完成此操作以容纳要包含的脚本数量; resources
是一个字符串数组,其中包含指向资源的网址。位置:
<script>
//array of scripts to include
var resources = ["http://yui.yahooapis.com/2.5.0/build/yahoo-dom-event/yahoo-dom-event.js", "http://yui.yahooapis.com/2.5.0/build/element/element-beta-min.js", "http://yui.yahooapis.com/2.5.0/build/connection/connection-min.js", "http://yui.yahooapis.com/2.5.0/build/tabview/tabview-min.js"];
for(var i = 0; i < resources.length; i++){
var script = document.createElement("script");
script.setAttribute("type", "text/javascript");
script.setAttribute("src", resources[i]);
document.getElementsByTagName("head")[0].appendChild(script);
}
//stuff to do after scripts have loaded
var myTabs = new YAHOO.widget.TabView("content-explorer");
</script>