我正在尋找一個AJAX函數來動態請求一個HTML頁面。我已經發現:跨瀏覽器AJAX函數動態加載HTML
function ajaxinclude(url)
{
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject) // if IE
{
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
}
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
page_request.open('GET', url, false) //get page synchronously
page_request.send(null)
return page_request.responseText;
}
它工作正常,在Firefox和Chrome,但它在IE失敗以下行:
page_request.open('GET', url, false)
有沒有保證是完全美好的可用功能跨瀏覽器兼容?
編輯:感謝所有偉大的建議......最後,我決定不在這裏重新發明輪子。而我忘記提及的其中一件事是,我也需要在一段時間內更新......雖然我已經弄清楚了,所以我認爲它沒有什麼不同。但後來我在原型中發現了偉大的Ajax.PeriodicUpdater()方法,並大大改變了我的想法。我剛剛從50 LOC解決方案到約4行:)
跨瀏覽器的任何事情都很棘手。使用jQuery等Javascript框架。它只有30k的空間,並且會爲你解決這個問題以及其他許多問題。 – cletus 2009-01-11 02:03:39
哪個IE失敗? – 2009-01-11 04:36:12
「它只有30k的佔地面積」*只有*有30k的佔地面積是荒謬的。 – Qix 2014-07-28 18:08:35