你如何用document.write编写JavaScript?

时间:2012-10-29 08:52:55

标签: javascript document.write

我搜索了这个,但我一直在寻找有关

的问题
"<scr" + "ipt>"

我的问题是我想从JavaScript代码中生成一些JavaScript。 我在下面复制了一个大致的想法。我怎么能实现我想要的?是否有必要使用外部JS文件? 感谢

document.write("var testprompt = prompt('What zindex page to change?');
var getpage = getElementById('mobileimage'+testprompt);
getpage.style.zIndex = '1000';");

5 个答案:

答案 0 :(得分:3)

您要找的是eval()。但是我建议不要使用它,因为使用eval运行Javascript代码存在许多安全问题。见why-is-using-the-javascript-eval-function-a-bad-idea

答案 1 :(得分:1)

使用javascript编写javascript的问题是浏览器只会执行代码的第一次传递。用document.write()编写的javascript将不会被执行,因此使它变得毫无用处。为什么你不能简单地将你想要执行的javascript写为javascript而不是通过document.write()来抽象它?

答案 2 :(得分:1)

适合我:

<html>
<body>
<script>
var i = 1;
document.write(i);
document.write("<scr"+"ipt> i = 2; document.write(i); </scr"+"ipt>");
i = 3;
document.write(i);
</script>
123
</body>
</html>

答案 3 :(得分:0)

getElementById()仅在加载DOM后才起作用,而通过document.write()编写的代码在解析HTML文档时立即执行。你必须将你的代码封装在一个回调中,以便在加载DOM之后执行(我建议使用像jQuery这样的库)

答案 4 :(得分:0)

在单行中运行它,在其工作的字符串之间没有'\ n'

document.write("var testprompt = prompt('What zindex page to change?'); var getpage = getElementById('mobileimage'+testprompt); getpage.style.zIndex = '1000';");