日期:2014-05-18  浏览次数:20422 次

老孟,慕白兄,还有其他ajax高手请进!
我想写一个方法调用新浪的天气预报。
在IE上,成功执行,但是在firefox上,总是报错:
“调用方法XmlHttpRequest.open时权限不足”

怎么办???

关键句代码如下:
xmlhttp.open( "GET ", "http://php.weather.sina.com.cn/search.php?city= "+city,true);




------解决方案--------------------

这是因为firefox安全性强,不允许跨域调用。

Firefox 要取消XMLHttpRequest的跨域限制的话,
第一是从 about:config 里设置 signed.applets.codebase_principal_support = true; (地址栏输入about:config 即可进行firefox设置)
第二就是在open的代码函数前加入类似如下的代码:
try { netscape.security.PrivilegeManager.enablePrivilege( "UniversalBrowserRead "); } catch (e) { alert( "Permission UniversalBrowserRead denied. "); }



------解决方案--------------------
后台代码里通过xmlhttprequest获取天气代码,再用ajax发布到前台如何?

这样可以规避权限问题