我在 jQuery Mobile 工作,这很棒。我对在 URL 的散列部分内提供参数有疑问。
这是一些示例代码。在主页的 content
部分,我希望能够链接到一个名为 e.g. 的页面。 “#photo-123”并加载下面的“照片”页面。然后我会从 URL 中提取照片编号,并加载图像 123。
<!-- Home page -->
<div data-role="page" id="home">
<div data-role="header">
<h1>Home</h1>
</div>
<div data-role="content">
<p><a href="#photo" data-role="button">Photo ###</a></p>
</div>
</div>
<!-- Photo page -->
<div data-role="page" id="photo">
<div data-role="header">
<h1>Photo ###</h1>
</div>
<div data-role="content">
<img id="myphoto" src="" />
</div>
</div>
这样我就可以重用 URL,即用户可以直接重新加载该页面。
是否可以使用 jQuery Mobile 在哈希 URL 中传递参数? (或者实际上通常使用 HTML - 我知道例如 BBQ 插件是可能的,但如果可能的话我宁愿避免使用插件)
最佳答案
您可以使用全局事件 Hook 和数据标签来处理和存储内部(即#blah -> #blah2 之间)转换的参数:
在你的 HTML 中你可以去
拦截所有链接上的点击并查找特定的数据元素,例如数据参数:
$('a').live('click', function(e) { params = $(e.target).jqmData("params") } )
在这种情况下,您正在创建一个全局 params 对象,您应该能够从所有代码中以统一的方式访问它。
关于javascript - jQuery 手机 : supply parameters in hash URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5791943/