jQueryMobile/jQuery在多页网站中的问题
issue with jQueryMobile/jQuery in a multi page site
我对jQuery和jQueryMobile有问题。
我有一个2页的网站:
<div data-role="page" id="main">
<div data-role="header">
header1
</div>
<div data-role="content">
<a id="1" href="#detail">link</a>
</div>
</div>
<div data-role="page" id="detail">
<div data-role="header">
header2
</div>
<div data-role="content">
<div id="foo">content2</div>
</div>
</div>
当我按下链接时,我用jquery保存id:
$(document).ready(function(){
var test = 0;
$('a').click(
function ()
{
test= $(this).attr('id');
}
);
});
到目前为止,一切都很好。问题是,当我点击链接后想读出var test
时,它不再保存。
我能做些什么来防止这种情况发生?
我想做这样的东西:
$('#foo').html(test);
- http://jquerymobile.com/demos/1.0.1/docs/api/events.html
重要提示:使用
pageInit()
,而不是$(document).ready()
在jQuery中学习的第一件事是调用
$(document).ready()
函数,因此一切都将尽快执行加载DOM。但是,在jQueryMobile中,Ajax用于加载导航时将每个页面的内容放入DOM中,并且DOM已就绪处理程序只对第一页执行。只要加载并创建新页面后,您可以绑定到pageinit事件。本页底部将对此事件进行详细解释。
我还建议阅读JavaScript 中的var Scope和Closures
相关:
- 为什么变量超出范围
从注释中读取内容时,需要使用pageInit。你试过吗
$( '#main' ).live( 'pageinit',function(event){
var test = 0;
$('a').click(
function ()
{
test= $(this).attr('id');
}
);
});
var test = 0;
$('#main').live("pageshow",function(event){ //or pageinit, or pagecreate
$('a').click(
function ()
{
test= $(this).attr('id');
}
);
});
相关文章:
- "访问控制允许起源”;通过javascript从http页面调用同一网站的httpsurl时出现问题
- 移动网站重定向问题
- Bootstrap一页导航Fluid网站最小化问题
- 使用可可将JavaScript注入网站时出现问题
- 在我的网站上创建一个在1-10之间不断变化的数字时遇到了问题.Javascript
- 跨浏览器问题:如何调试我的网站'在windows PC的safari上的行为
- j查询网站标题问题
- Firebase API 问题与 AngularJS 网站示例项目
- wordpress和packery.js的集成问题,但适用于非wordpress网站
- 网站下拉菜单的宽度问题
- 如何解决wordpress网站的速度问题
- 我的网站加载出现问题.这是一个嵌入到index.html中的.SWF文件
- 我的网站存在火狐缓存问题
- 使用 PHP 和 Javascript 自动登录到我的网站时有什么问题
- 实时Magento网站上的原型JS问题
- 当我尝试合并多个javascript文件时,网站出现问题
- 使用主导航滚动网站问题
- 鼠标悬停事件类似于本网站问题底部的按钮
- 固定切换菜单在一页网站问题
- 在iOS7中使用skrollr, skrollr-menu的视差网站问题