javascript - jqm data-rel ="back"问题

标签 javascript jquery jquery-mobile back

想象以下场景:

我有一个 jquery-mobile 公式,它的结果链接到它的结果页面。

在结果页面上我有这个后退按钮:

<a href="#" data-rel="back" data-role="button"></a>

这可以很好地更新内容并保留提交的表单数据,

但是 如果用户来自搜索引擎或类似的外部链接,那么我的后退按钮会链接回 searchengine/externLink 。

那么我如何区分那些来 self 的表单或 jqm 方式的其他地方的人?

我有一个“开始搜索页面”,如果用户不是来自搜索,我希望链接到该页面,并且我不想错过从搜索到结果页面的 ajax 链接,请使用相同的按钮,理想情况下我不必设置任何 cookie。

有没有比从 document.referrer 检查服务器 URL 更明智的尝试? 提前致谢

最佳答案

您可以使用以下代码检查当前页面网址:

var prevUrl = $.mobile.activePage.data('url');

如果您想根据之前的 URL 执行不同的操作。 然后将 URL 保存在全局 javascript 变量中,然后单击按钮检查之前的 URL 并执行您的功能。例如

导航到页面之前:

var prevUrl = $.mobile.activePage.data('url');

点击按钮:

if (prevUrl=="myurl") {
//do something
 $.mobile.changePage('#search')
}
else {
 $.mobile.changePage('#nothing')
}

关于javascript - jqm data-rel ="back"问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16552698/

相关文章:

javascript - 如何将字符串转换为 JavaScript 日期对象?

javascript - 在 .before() 中多次使用相同的参数并不像我预期的那样工作

javascript - 如何排列表格的 2 个单元格

单击主菜单项上的 jQuery 不会显示子子菜单

php - 通过 js 框架组织 JQuery 片段

javascript - 我如何从 Google Analytics 中提取数据并根据最流行的内容创建一个趋势话题部分

javascript - 如何让脚本与网页中的特定 HTML 元素进行交互?

jQuery 鼠标移动 : throw event into another element at coordinates

jQueryMobile 删除输入字段

div 底部的 jquery 移动额外间距