我的脚本如下所示:
<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/