我的页面上有一个jquery加载函数,当单击一个按钮时会触发该函数。该网址以http://domain.com/开头...当我通过转到http://www(dot)domain(dot)com/浏览到该页面时非常奇怪...访问允许控件原始错误显示在de控制台中。但是当我去普通http://domain(dot)com/时...当我按下按钮并且新内容被加载时,一切正常。
var loadingOverlay = $('#loadingOverlay');
$(".newsItemTitle").click(function () {
loadingOverlay.show();
var $target = $(this);
$url = "include/getFunction.php?json=1¶m=" + $(this).data("id") + "&function=getMainPageContent";
$.ajax({
url: $url,
success: function (html) {
$(".newsItemTitle").each(function () {
$(this).removeClass("active");
});
$target.addClass("active");
var text = $.parseJSON(html)['text'];
$(".js-content").empty().append(text);
window.setTimeout(function () {
loadingOverlay.hide();
$('html, body').animate({
scrollTop: $('.js-content-title').offset().top - 80
}, 'slow');
}, 500);
}
});
});
有谁知道如何解决这个问题?
答案 0 :(得分:0)
交叉对象资源共享会发生此类错误。在启用了CORS的服务器上,服务器将使用AJAX连接识别哪些域名有权访问数据,并且javascript安全模型将子域视为CORS下的不同站点。我会检查以确保CORS尚未设置为仅支持domain.com,如果它然后添加www.domain.com作为授权。如果您使用支持CORS的Web主机,您的托管服务提供商可能会提供帮助。
答案 1 :(得分:0)
这是预期的。 http://www.example.com
和http://example.com
起源不同。
有几种方法可以解决这个问题。