我需要创建下面的元素并将其添加到HTML文件的head部分。
<script type="text/javascript">
//Var declarations - ABCCD
(function(d) {
//FUNCTION CODES
}(document));
</script>
&#13;
一切都已完成但我刚刚遇到上述部分的问题。我尝试了不同的选项,但无法按照提到的方式添加功能。
var headtg = document.getElementsByTagName('head')[0];
var divElm = document.createElement('div');
var scpt = document.createElement('script');
scpt.type = 'text/javascript';
var A = "100";
var myfunc1 = function(d) {
//LINES OF CODE
}(document);
divElm.className = "ABC_" + A;
divElm.appendChild(scpt);
headtg.appendChild(divElm);
//Var declaration part
var decvar = 'var A = 10;'
scpt.appendChild(document.createTextNode(decvar));
scpt.innerHTML = myfunc1;
&#13;
但是该函数不会出现在脚本块中并且未定义。
请帮忙
答案 0 :(得分:1)
我不确定你想问什么,但我认为你的直接功能在语法上是不正确的,它写得像这样
(function(param){
//Do something
})(passed_param);
答案 1 :(得分:0)
这是一个如何将jquery脚本附加到我偶尔使用的html页面顶部的示例。而不是注入jquery脚本注入你的javascript。
var jq = document.createElement('script');
jq.src =
"https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js";
document.getElementsByTagName('head')[0].appendChild(jq);
setTimeout(function(){
console.log("Hey jquery");
}, 1000);
答案 2 :(得分:0)
就我的代码而言,您尝试添加到innerHTML
标记的script
不是字符串,而是一个函数对象。您应该将其更改为&#34; &#34;
编辑:
此外,当您设置tag.innerHTML = "something"
时,将替换所有标记内容。在您的情况下,您可能希望添加它,所以tag.innerHTML += "something"
。