最近在做Widget项目,主要是三星和诺基亚手机上的应用程序。因为手机应用程序的客户端只能动态显示内容,所以只能用Ajax请求服务器和用JavaScript动态显示。此时加载jQuery可以省不少事儿。
在用Ajax请求服务器时,代码如下:
$.ajax( { type: "POST", url: "", processData: false, timeout: 20000, error: function(){alert("unknow");}, data: "uid=" + uid + "&content=" + content, success: function(msg) { } } )//end $.ajax用火狐调试了半天,没反应。于是,用IE看错误提示,如图:
显示“没有权限”,Google后才发现:jQuery不能跨域,就是说上面代码中url后面的地址要与你当前JavaScript代码所在的页面的域名相同。将该页面上传到服务器调试或者将服务器端程序放到本地就可以了。为什么jQuery会有这种限制?我想是为安全着想吧,呵呵,个人观点。