jquery - hashchange jQuery 不工作

标签 jquery hashchange

我有一个表单,可以在成功提交后将哈希 URL 添加到我的域 ( http://domain.com/#addedhash )

我希望表单在添加哈希链接后向其自身添加一个类。

我有这段代码,但由于某种原因它不起作用:

<script type="text/javascript">
$(document).ready(function() {
    $(window).on('hashchange', function() {
        if (window.location.href.indexOf("#addedhash") > -1 ) {
            $('.myclass').addClass('hide');
        } 
    });    
});
</script>

也许有人能看出这里有错误吗?

如果通过单击按钮添加链接的哈希值,则该脚本有效,但如果通过表单提交成功结果添加哈希值,则脚本不会执行任何操作。有什么想法吗?

最佳答案

据我所知,提交表单的工作方式与链接的工作方式不同。它打开一个新查询。哈希值由链接对象(而不是 Form 对象)在内部 (DOM) 控制。

关于jquery - hashchange jQuery 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42252788/

相关文章:

jquery - 更改元素的文本而不影响同级标签 (jQuery)

jquery - 在 Django 中返回 AJAX 请求的表单错误

javascript - 让 hashchange 事件在所有浏览器(包括 IE7)中工作

javascript 变量显示在 console.log 中但不在浏览器输出中

javascript - 关闭按钮替换切换类 - 同位素

javascript - 如何使用 Handlebars 数据填充隐藏的 div?

jquery - 输入事件在 Jquery Mobile 和 PhoneGap 中不起作用

internet-explorer - onhashchange 与 IE 9

javascript - Backbone - 覆盖哈希更改历史

jquery - 用户滚动到 anchor 时的 Javascript CSS