簡體   English   中英

你如何用 document.write 寫出 JavaScript 代碼?

[英]How do you write out JavaScript code with 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';");

您正在尋找eval() 但是,我建議不要使用它,因為使用 eval 運行 JavaScript 代碼存在許多安全問題。 請參閱為什么使用 JavaScript eval 函數是個壞主意? .

使用 JavaScript 編寫 JavaScript 的問題在於瀏覽器只會對代碼執行第一遍。

使用 document.write() 編寫的 JavaScript 將不會被執行,從而使其變得毫無用處。 為什么不能簡單地將要執行的 JavaScript 編寫為 JavaScript 而不是通過 document.write() 對其進行抽象?

這對我有用:

<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>

getElementById()僅在 DOM 加載后起作用,而通過document.write()編寫的代碼在解析 HTML 文檔時立即執行。

你必須將你的代碼封裝在一個回調中,以便在加載 DOM 后執行(我建議使用像 jQuery 這樣的庫)。

在一行中運行它,字符串之間沒有 '\\n'。 有用。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM