跨域AJAX请求,jQuery在Firefix旧版本中不起作用
这是我的代码,它在FF 41.0.2、GC 46.0、IE 11和Opera 33中运行良好,我还没有在Safari中尝试过。问题是这在FF版本37和38中不起作用。我是否需要更改或添加任何东西,以使此代码与尽可能多的所有浏览器和版本兼容 ------jsonp.php----------跨域AJAX请求,jQuery在Firefix旧版本中不起作用,jquery,ajax,browser,cross-browser,jsonp,Jquery,Ajax,Browser,Cross Browser,Jsonp,这是我的代码,它在FF 41.0.2、GC 46.0、IE 11和Opera 33中运行良好,我还没有在Safari中尝试过。问题是这在FF版本37和38中不起作用。我是否需要更改或添加任何东西,以使此代码与尽可能多的所有浏览器和版本兼容 ------jsonp.php---------- $.ajax({ url : "http://www.sample.sample.ph/sample.php", dataType:"jsonp",
$.ajax({
url : "http://www.sample.sample.ph/sample.php",
dataType:"jsonp",
jsonp:"mycallback",
success:function(data)
{
alert(data.status);
}
});
$callback ='mycallback';
if(isset($_GET['mycallback'])) {
$callback = $_GET['mycallback'];
}
$arr =array();
$arr['status']="success";
echo $callback.'(' . json_encode($arr) . ')';
------sample.php----------
$.ajax({
url : "http://www.sample.sample.ph/sample.php",
dataType:"jsonp",
jsonp:"mycallback",
success:function(data)
{
alert(data.status);
}
});
$callback ='mycallback';
if(isset($_GET['mycallback'])) {
$callback = $_GET['mycallback'];
}
$arr =array();
$arr['status']="success";
echo $callback.'(' . json_encode($arr) . ')';
我检查了有问题的计算机,在控制台中得到了以下信息:
reference error $ is not defined
我发现Firefox正在阻止它。当我试图在FF的一个新标签中加载Google CDN时,它说这个连接不可信,我知道风险选项不可用
因此,我得出结论,这不是浏览器版本有问题,也不是jQuery代码有问题,而是浏览器阻塞了jQuery Google CDN。如果这个页面有帮助,我会试试。自托管jQuery解决了这个问题。请参考下面的内容,看看这是否解决了您的问题。