Tag: hashchange

切换2个书签(或查看页面,并从书签加载另一个页面)将无法与jQuery History插件一起使用

任何人都知道如何修复这个jQuery History插件? (对于ajax历史和书签) 在http://github.com/tkyk/jquery-history-plugin/issues#issue/5 这是详细信息: 我的应用程序使用IE 8的IE 7兼容模式以及http://www.serpere.info/jquery-history-plugin/samples/ajax ,它使用IE 8的默认模式,似乎有这个问题: 创建2个书签 http://www.serpere.info/jquery-history-plugin/samples/ajax/#1 http://www.serpere.info/jquery-history-plugin/samples/ajax/#2 现在单击一个书签,然后尝试来回点击另一个。 页面内容未更新。 在当前的Firefox和Chrome中,它可以运行。 在IE 8中,它没有。 如果直接修改#2到#3的哈希值,也是如此 PS我很确定它是可以解决的,因为如果在IE 8上使用Facebook, http://www.facebook.com/someusername?v=info#!/someusername?v=info http://www.facebook.com/someusername?v=info#!/someusername?v=wall 如果用户在2个书签之间切换,则效果很好。 (用上面的一些真实用户名替换someusername)

Jquery +最新的哈希更改监听器?

我使用http://benalman.com/projects/jquery-hashchange-plugin/来监听我的项目中的哈希变化。 但他的插件已经过时,并且不适用于较新版本的浏览器,如firefox 9和IE9。 搜索谷歌和这里,但找不到任何其他插件。 或者只是使用此代码来定位大多数浏览器? $(window).bind(‘hashchange’, function() { //code }); 编辑:似乎在这些浏览器上有关于console.log()的问题,并且与hashchange无关。 删除所有console.log输出后,它会像预期的那样工作

Javascript锚导航

我正在创建一个网站,其中包含与Facebook和谷歌邮件一起使用的“锚导航”。 我有它工作但不完全。 当我用#contact之类的东西加载页面时,除非我点击它的链接,否则它不会加载它。 此外,是否有更好,更有效的方式来做我正在做的事情? 我不是JS编程的最佳人选。 JavaScript : $.navigate = function() { // a new link if($anchor != document.location.hash){ // add a preloader $(“#content”) .empty() .html(”); // change the anchor saved for next time $anchor = document.location.hash; // get the variables ready for the get var i = $anchor.substring(1).split(“/”); var $page = i[0]; var $y = […]

当用户使用JQuery访问哈希链接(#something)时如何运行JavaScript函数?

我在http://example.com/app有一个webb应用程序,如果用户正在访问http://example/app#add-item ,我想显示一个表单。 有什么办法可以使用jQuery脚本来添加这个function吗? 我当前的jQuery脚本已经有这样的结构: $(document).ready( function() { $(‘#search’).keyup( function() { … } ); } ) 如何使用这样的方式显示表单: $(document).ready( function() { $(‘#search’).keyup( function() { … } ); $(‘#add-item’).visit( // .visit probably doesn’t exist function() { content.innerHTML = myForm; } ); } )

jQuery指向链接时应该显示默认隐藏的div

我有一个页面默认隐藏了几个div。 我希望能够将用户指向显示div的链接。 恩。 https://app.emailsmsmarketing.com/login 用户可以单击“注册”,隐藏登录div并显示寄存器div。 我想要完成的是基本上添加一个链接到主站点,用户可以在默认情况下访问注册表单(仅使用jQuery)。 恩。 https://app.emailsmsmarketing.com/login#!register (或类似的东西) 基本上我要问的是: a)有可能做到这一点 b)如果是这样,怎么样? 我不确定这对任何人都有意义。 我感谢您提供的任何帮助。

停止通过JavaScript或jQuery在hashchange事件上加载图像

我正在使用jQuery BBQ:后退按钮和查询库插件来创建一个页面,当单击链接时,该页面会提取动态内容。 单击链接时,将更改哈希并引入新内容(因此禁用单击href的“默认”操作。) 那部分工作正常,但有一个问题。 我的问题的例子 假设“主页”页面中有一些DIV图像和一个链接列表…… 第一页 第二页 第三页 图像可能需要一段时间才能加载,同时用户通常不会等待它们完全加载并单击“Page One”链接。 这将清除“主页”页面的内容并加载到“页面一”内容中。 这很好。 问题是即使用户已经从“主页”页面移动,来自“主页”页面的图像仍然在浏览器中加载。 我知道这是发生的事,因为页面实际上没有改变,我正在使用BBQ插件的hashchange hack但我想知道是否有一种方法在JavaScript中告诉当前加载的所有图像停止在hashchange事件上? ?? 示例代码就像…… $(window).bind(‘hashchange’, function () { //code to stop images from loading // now load in new HTML content });

Javascript / jQuery仅在浏览器后退/前进按钮单击时检测哈希更改

是否可以仅在浏览器历史记录更改(即后退或前进按钮)上检测哈希更改? 我已经看到了onBeforeUnload事件,但是这个事件不会触发哈希更改,因为窗口没有卸载。 散列事件显然会随着哈希更改而触发。 任何修复? 优选地,没有插件。 我见过jQuery历史插件,但我正在寻找最简单的解决方案。 谢谢您的帮助。

在JQuery移动UI中禁用散列更改控制器并替换为backbone.js

我正在使用JQuery Mobile UI ,widgit工具包很不错。 但是我也在使用backbone.js,它带有一个非常整洁的hashchange控制器框架。 问题是JQuery Mobile UI有一个内置的糟糕的哈希变更控制器,假设你总是希望对每个哈希变化进行AJAX查询并从服务器加载内容。 从JQuery Mobile UI中拔出小部件框架是否有任何成功?

JavaScript .hashchange性能。 它会带来任何放缓吗?

jQuery hashchange事件 对我来说,它现在看起来是最成熟的解决方案(如果我错了,请纠正我)。 我非常喜欢这个用浏览器哈希操纵的插件。 在某些情况下,它简化了js代码。 我真的想开始广泛使用它,但我有一个问题要问你。 根据源,它使用循环并检查散列锚是否每50毫秒更改一次。 性能怎么样? 我可以过度使用hashchange吗? 它会导致性能显着下降吗? 如果是这样的话?

获取hashchange事件以适用于所有浏览器(包括IE7)

我有一些代码(由另一个开发人员编写)在WordPress内部进行AJAX页面加载(例如,没有页面重新加载),当您单击导航项时,AJAX刷新主要内容区域。 我的问题是它在IE7中被破坏了,我不知道从哪里开始调试。 原来的开场白是 var queue = 0; $(‘document’).ready(function() { window.addEventListener(“hashchange”, hashChange, false); // Define window location variables var windowHost = window.location.host, windowHash = window.location.hash, windowPath = window.location.pathname; 但我改变了它们,使addEventListener条件,取决于该方法是否存在。 一些研究告诉我,该方法在旧版本的IE中不可用(例如在我的情况下为7)。 此外,IE7调试控制台将其识别为不可用的方法,因此非常清楚。 我重写了以下行,但代码仍然无法正常工作: var queue = 0; $(‘document’).ready(function() { if(window.addEventListener) { window.addEventListener(“hashchange”, hashChange, false); } else if (window.attachEvent) { window.attachEvent(“hashchange”, hashchange, false); } // Define window location […]