我的脚本如下所示:

<script>
    var queryString = window.location.search;
    var pos = queryString.indexOf("?refer=");
    var referEmail = queryString.substring(pos+7);
    document.getElementById("referral-code").value = referEmail;
</script>


HTML代码如下所示:

<form action="/" method="POST">
    <label for="referral-code">Referrer's code (hidden): </label>
    <input type="text" name="referral_code" id="referral-code"/>
    <br/>
    <label for="me-email">My Email: </label>
    <input type="text" name="self_email" id="me-email"/>
    <br/>
    <input type="submit" value="Step Inside" />
</form>


我认为将<script>标记放在<head>中可能更清洁。但是,我不确定在处理<body>中的DOM之前脚本是否将等待执行。如果不是,document.getElementById("referral-code")是否会返回undefined

是否有人对<head>中的脚本是否等待执行直到加载整个HTML有任何想法?我应该将DOM操作脚本放在<head>中还是在</body>结束之前?

最佳答案

如果您想放在头上,请确保将其放入

$(document).ready(function(){

});


否则,您可以将其放在DOM完成之后(就在</body>之前)

关于javascript - 我应该将DOM操作JS脚本放在“<head>”中还是在结束“</body>”之前?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32409143/

10-12 07:37