问题描述
- 苹果系统safari浏览器ajax不兼容的问题 2C
- 写了一个向数据库插入数据时,在前台动态显示进度条的小程序,在windows下火狐 IE 谷歌浏览器都可以显示没有问题
但是要用的那个人是苹果的系统,在使用的时候就不能显示出进度条动的效果,一直都是刚开始的那个样子,这是怎么回事?求大神解答一下,万分感谢具体代码如下 :
//进度条 var xmlHttp; var key; function createXMLHttpRequest() { if (window.ActiveXObject) { xmlHttp = new ActiveXObject(""Microsoft.XMLHTTP""); } else if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } } function go() { createXMLHttpRequest(); clearBar(); var url = ""progressBarShow?task=create""; var button = document.getElementById(""go""); button.disabled = true; xmlHttp.open(""GET"" url true); xmlHttp.onreadystatechange = goCallback; xmlHttp.send(null); } function goCallback() { if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { setTimeout(""pollServer()"" 2000); } } } function pollServer() { createXMLHttpRequest(); var url = ""progressBarShow?task=poll&key="" + key; xmlHttp.open(""GET"" url true); xmlHttp.onreadystatechange = pollCallback; xmlHttp.send(null); } function pollCallback() { if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { var percent_complete = xmlHttp.responseXML.getElementsByTagName(""percent"")[0].firstChild.data; var progress = document.getElementById(""progress""); var progressPersent = document.getElementById(""progressPersent""); progress.width = percent_complete + ""%""; progressPersent.innerHTML = percent_complete + ""%""; if (percent_complete < 100) { setTimeout(""pollServer()"" 10); } else { document.getElementById(""complete"").innerHTML = ""Complete!""; //document.getElementById(""go"").disabled = false; } } } } function clearBar() { var progress_bar = document.getElementById(""progressBar""); var progressPersent = document.getElementById(""progressPersent""); var complete = document.getElementById(""complete""); progress_bar.style.visibility = ""visible"" progressPersent.innerHTML = "" ""; complete.innerHTML = ""开始导入数据""; } function begin(){ var form = document.getElementById(""addMoreForm""); form.submit(); //提交表单 go(); }
解决方案
解决方案二:
你写的很棒,建议采用JQuery来弄,直接就不用考虑跨浏览器的问题。
时间: 2024-09-29 16:12:01