我在尝试动态添加和执行包含内联 Javascript 的 div 时遇到问题?
var div = document.createElement('DIV'); div.onready = (function(name) { return GA_vitalFillSlot(name); })(wallpaper_ads.custom[i]); document.getElementById('wallpaperAdContainer').appendChild(div);
其中 wallpaper_ads.custom[i]
包含一个字符串,例如'BMX_wallpaper_2328x1080_homepage'。
上面的代码不起作用。但是,如果我将 GA_vitalFillSlot()
更改为 alert()
,它会起作用:
var div = document.createElement('DIV'); div.onready = (function(name) { return alert(name); })(wallpaper_ads.custom[i]); document.getElementById('wallpaperAdContainer').appendChild(div);
此外,做这样的事情也不起作用:
var js = document.createElement('SCRIPT'); js.type = 'text/javascript'; js.innerHTML = 'GA_vitalFillSlot("'+wallpaper_ads.custom[i]+'");'; document.getElementById('wallpaperAdContainer').appendChild(js);
知道这里出了什么问题吗?
最佳答案
或者:
js.src = 'myCode.js';
或
js.text = 'alert("hey");';
使用 innerHTML 插入的脚本不会被执行。
关于javascript - 如何使用包含内联 JS 的 <script> 标签动态添加 div 以便执行此操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9088852/