jQuery 点击事件在 Chrome 中不起作用

标签 jquery google-chrome click

我使用此代码作为一个简单的示例,每当我单击链接时,都会获取另一个 HTML 文件的内容并将其放入 div 中。它在 Firefox 和 Safari 中运行良好,但在 Chrome、IE 或 Opera 中运行不佳。

<a class="ajaxLink" href="RS.html">Click to load RS content</a>

<div id="page">
    Initial TEXT - will be substituted with RS when clicking ajaxLink
</div>

<script>
    $(function () {
        $('a.ajaxLink').click(function(e) {
            e.preventDefault();
            $('#page').load($(this).attr('href'));
        });
    });
</script>

在 Chrome、IE 和 Opera 中,每当我单击链接时,无论 HTML 文件的内容如何,​​都不会发生任何事情。可能是我的代码不兼容?

说实话,我从这里得到了这段代码: Javascript wont load into ajax div

我不完全理解 ($(this).attr('href')); 的工作原理,但理解在 #page 中加载 HTML 应该是正确的.

最佳答案

你的代码没有问题,我的 friend 在 mozilla 上尝试一下,而不是在 chrome 上尝试,它在 chrome 上不起作用,因为

由于同源策略,您将无法从同一域访问该 URL。 由于源(原始)页面和目标 URL 位于不同的域,因此您的代码实际上是在尝试发出跨域 (CORS) 请求,而不是普通的 GET 简而言之:对于本地主机并从同一域获取页面,您无法访问该文件

关于jQuery 点击事件在 Chrome 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22430607/

相关文章:

javascript - 图片通过鼠标悬停上下滑动

javascript - Chartjs - 使用条形图在悬停时显示所有数据集中的元素

JavaScript 代码无法跨浏览器运行

CSS 背景渐变在 Google Chrome 中不起作用

javascript - 光滑 slider 中心模式

google-chrome - SVG 文件中的 CSS3 动画和过渡仅适用于 Google Chrome(甚至不适用于 Safari)

javascript - 我的脚本只运行一次,我想要无限次而不重新加载 html 页面

JQuery 单击 div 内

vue.js - Vue Slider 组件 - 启用拖动结束和点击同时更新

javascript - while循环仅设置php输入字段中的第一个值