问题标签 [jquery-address]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
81 浏览

jquery-address - IE6 上的重定向循环

我一直在我的一个项目中使用 Jquery 地址并且一切正常,但是当我在 IE6 中尝试它时,行为非常奇怪。

当我尝试访问 http://www.local.test.com/?param=123

它无限循环: http ://www.local.test.com/#/?param=123#/?param=123#/?param=123#/?param=123#/?param=123#/

顺便说一下,这是我的 jquery 初始化

0 投票
1 回答
426 浏览

javascript - 使用新地址、标题等更新 sharethis 悬停小部件

我在单页应用程序上使用了 sharethis 悬停小部件(显示:固定)和 jQuery 地址。所有请求都是 pushState 并通过 ajax 加载。因此,当用户从 pageA.html 转到 pageB.html 时,地址会通过 pushState 更新。但是,当我单击“共享到 facebook”上的某个页面时,我进入网站的页面正在共享,而不是当前页面。这个现象可以在这个网站上看到。

我在存储 url、标题等的 stWidget 对象中进行了搜索,但我找不到它。Sharethis 对此非常保密,并一直引用此页面,但这仅说明如何在 ajax 加载的内容中激活小部件,而不是如何使用新地址、标题等更新小部件或如何修改它。

0 投票
1 回答
237 浏览

jquery - jQuery Address 将新的深层链接附加到现有的深层链接

我想和这里一样的问题,但没有给出解决方案。如果您通过深层链接直接进入加载 jQuery 地址的网站,http://www.domain.com/deeplink1并且您想通过按链接转到下一页,则下一个深层链接将附加到初始深层链接http://www.domain.com/deeplink1/deeplink2

我该如何预防?

0 投票
1 回答
756 浏览

jquery - jQuery在页面后退按钮滚动

我正在寻找一个页面,允许使用页面内的内容的后退和前进按钮。我已经使用 jQuery Address 完成了基本功能,如

  • http://www.asual.com/jquery/address

我遇到的问题是如何让回调函数与 jQuery scrollTo 插件协同工作,以提供动画的前后滚动体验。

我相信你可以看到这个问题真的没有那么难,但是因为我还在学习它超出了我的知识范围。任何帮助深表感谢。

所有内容都包含在一个页面中,通过使用具有公共类的各种 div 元素划分为不同的“页面”

更新:

我创建了一个小提琴来更清楚地显示问题。

jsfiddle.net/d7uZ7/6

jquery 的底部是用于在后退或前进页面事件后触发滚动的内容

解决方案:

因此,在与这个问题斗争了很长时间之后,已经找到了一个解决方案(某种)。此外,如果没有与JacobMcLock的聊天,我不应该认为这一切都是不可能的。

无论如何,我原帖的最后一部分应该改为以下两个代码块之一

使用第一个块以获得最佳速度,但缺乏兼容性。这将在 Chrome 和 Safari 中正常运行,而在其他系统中会出现故障。这是因为他们正确地处理hashchangepopstate事件,而其他人则没有。奇怪的是,一些较旧的浏览器也可以正常工作。

第二种方法虽然慢得多(动画开始有明显的延迟),但在几乎所有浏览器中都能正常工作。是的,只是半好,有时它仍然失败。所以现实情况是,由于浏览器没有正确使用这些标签,你可能会在页面转换中陷入无聊的旧的非动画来回。好难过。除非你想做大量的编码。

0 投票
2 回答
866 浏览

jquery - 区分jquery地址插件中的后退/前进

从文档( http://www.asual.com/jquery/address/docs/ )中可以看出,该插件有一个事件来检测何时按下浏览器的后退/前进按钮。

$.address.externalChange(fn)

我的问题是,是否有办法知道何时按下背部以及何时按下前方。例如,这在两种情况下都有效:

谢谢。

0 投票
2 回答
409 浏览

jquery - jQuery地址:证明用户正在按下前进按钮而不是后退按钮

编辑 3:这个jsFiddle与插件一起使用,我几乎拥有它。

编辑2:我做了一个小提琴。我无法让插件在那里工作,但也许更容易分析。


在我正在构建的网页中,文章(帖子)和新页面是通过 Ajax 加载的。在加载新的 Ajax 内容的同时,地址栏会发生变化(使用jQuery 地址插件)。

所以一个正常的导航会是这样的:

       //page2 /page3 /article7 /page3 /page4

请注意,在此导航中,没有按下浏览器按钮,当退出文章 7 时,网站会返回到其先前的 url,这种情况下是page3 。

该插件不会检测用户何时按下后退或前进按钮。我设法找出一种方法来了解用户何时按下后退或前进按钮:

每次添加新内容并更改地址时,我都会将新地址存储在一个数组中。如果用户按下后退或前进按钮,我会这样分析:

if (new_url == penultimate_value_in_array) => 按下后退按钮(从数组中删除最后一个值)
else => 按下前进按钮(向数组添加新值)

这适用于这种导航:

       //page2 /page3 /page4

就我而言,它非常适合“后退”按钮。但是,如果用户从 /article7 到 /page3 按下 Forward,该函数会将其读取为 Back。这是一个例子来理解我的意思:


用户在 /page4 并按 Back -> new_page=/page3 等于 penultimate_page_in_array(/page3) => BACK

       //page2 /page3 /article7 /page3 /page4

用户在 /page3 并按 Back -> new_page=/article7 等于 penultimate_page_in_array(/article7) => BACK

       //page2 /page3 /article7 /page3

用户在 /article7 并按 Back -> new_page=/page3 等于 penultimate_page_in_array(/page3) => BACK

       //page2 /page3 /article7

用户在 /page3 并按 Back -> new_page=/page2 等于 penultimate_page_in_array(/page2) => BACK

       //第2页/第3页

用户在 /page2 并按下 Forward -> new_page=/page3 不等于 penultimate_page_in_array(/) => FORWARD

       / /第2页

用户在 /page3 并按下 Forward -> new_page=/article7 不等于 penultimate_page_in_array(/page2) => FORWARD

       //第2页/第3页

用户在 /article7 并按下 Forward -> new_page=/page3 等于 penultimate_page_in_array(/page3) => BACK (这里的值应该是 FORWARD

       //page2 /page3 /article7

我如何引入另一个可以确定 False Back 应该是 Forward 的语句?



编辑:

这是我正在使用的代码,我不确定它是否有助于解决问题,但这里是:

访问新页面时:ajax调用,然后:

加载文章时:ajax调用,然后:

存在文章时:

当用户按下某些浏览器按钮时,会执行此代码:

0 投票
1 回答
418 浏览

html - 在 jQuery 地址插件书签页面上自动加载 div 内的内容

我正在使用 jquery.address 插件来更新浏览器的地址栏,同时通过 ajax 加载内容。一切正常,除了我不知道如何在用户尝试访问诸如“domain.com/about-us”之类的书签页面时自动将 event.value 或 event.path 加载到我用来加载内容的 DIV 中,在这种情况下页面会加载,但“关于我们”的内容不会加载到 DIV 中。我错过了什么?这是我的代码:

JS:

HTML:

.ht 访问:

谢谢!

0 投票
0 回答
144 浏览

jquery - Asual JQuery Address 1.5 没有在 IE 中触发 externalChange

当您离开页面并单击返回或刷新页面时,我遇到的问题是 externalChange 未在 IE 中触发。

有问题的网页之一是http://www.travelwisconsin.com/events。这肯定在 IE9 中发生,但我也能够使用 BrowserStack 在 IE10 中重现它

重现步骤:

  1. 访问http://www.travelwisconsin.com/events
  2. 转到页面底部的目录
  3. 翻阅目录几次(网址将使用散列 url 更新)。
  4. 单击查看其中一个事件的详细信息
  5. 点击浏览器返回按钮
  6. 页面不会调用 externalChange 来触发您上次访问的页面的 ajax 调用

下面是我用来设置这个过程的 javascript。当您执行上述第 6 步时,永远不会调用 externalChange 方法。你对可能发生的事情有什么建议吗?

0 投票
0 回答
165 浏览

jquery - 如何在使用 Ajax 时使用 address.js 在 URL 中添加#?

我正在 asp.net mvc(4) 中开发电子商务应用程序。我在 Category 页面上使用 Ajax 调用调用了 Specification 过滤器。为此,我使用了两个模板。首先是加载带有页眉和页脚的类别布局。第二个模板将加载我的产品并刷新我的过滤器块。

但是当我使用 Ajax 调用时,页面 url 不会改变。所以它也给搜索引擎爬虫带来了问题。为了解决这个页面,我使用了 address.js,它将 # 放在 urls 中。所以搜索引擎可以理解页面。

我还有另一个问题,当我在 ajax 调用中使用 GET 方法并单击浏览器的后退按钮时,所有布局都消失了。我可以通过使用 POST 方法来解决这个问题,但请建议在 ajax 调用中使用什么更好。

0 投票
3 回答
313 浏览

jquery - AJAX 深度链接——正确的语法是什么?

用于 AJAX 深层链接的正确语法是什么?我正在使用jQuery 地址

我见过以下方法:

哪个更好,为什么?