-1
我明白這個問題已經被問了很多次,但是我找不到解決我的問題,儘管搜索谷歌和stackoverflow和應用各種嘗試。Javascript setTimeout不起作用
這裏是我的JS:
function Redirect(id)
{
window.open("go.php?id=" + id, "_blank");
}
function LinkPop(id)
{
xmlObj = new XMLHttpRequest();
xmlObj.open("GET", "pop.php?id=" + id, false);
xmlObj.send();
document.getElementById(id).style.fontSize = xmlObj.responseText + "px";
document.getElementById(id).title = "Clicked " + (xmlObj.responseText - 18) + " times";
window.setTimeout(function(){Redirect(id);}, 2000);
}
一切從2秒延遲,新頁面打開工作分開。正如你所看到的,我嘗試了一個沒有幫助的閉包。我希望我已經錯過了非常基本的東西...
感謝您的任何幫助。
對我來說沒問題。究竟發生了什麼?錯誤? 「重定向」功能是否真的受到打擊?另外,在JS中,最好將大括號放在同一行,並且不要大寫函數名稱,除非您計劃實例化,而不是僅僅調用它們。 – Utkanos 2012-07-07 10:19:02
將'xmlObj.responseText'轉換爲整數。確保存在帶'id'的元素('document.getElementById(id)'不能爲空)。 – 2012-07-07 10:26:48
我把大括號放在同一行上,我習慣用PHP和C編程一個特定的方式.Redirect()函數似乎沒有被調用。我使用alert()調用來測試它。 – Lee 2012-07-07 10:27:02