我正在制作一个jQuery Mobile应用程序。我希望能够在另一个文件中设置navbars的属性。这意味着,我想通过.js文件中的一个函数来更改许多html文件中的navbar的atrributes。
我尝试在页面创建中更改类,但它对我没用:
$('div[data-role$="navbar"]').bind('pagecreate', function(){
div=this;
alert(div.class);
div.setAttribute("class","ui-btn ui-btn-inline ui-btn-icon-left ui-btn-up-a");
}
你有什么想法吗?
答案 0 :(得分:0)
当您使用jQuery时,为什么不让自己更轻松并在处理程序中使用它?
$('div[data-role$="navbar"]').bind('pagecreate', function(){
var $this = $(this);
alert( $this.attr('class') );
$this.attr('class','ui-btn ui-btn-inline ui-btn-icon-left ui-btn-up-a');
//Possibly you mean ...
//$this.addClass('ui-btn ui-btn-inline ui-btn-icon-left ui-btn-up-a');
}
答案 1 :(得分:0)
Here就是一个例子,这是一个代码:
$('div:jqmData(role="page")').live('pagebeforeshow',function(){
$('div[data-role$="navbar"] ul li a span span').addClass('new-class');
});
此行将针对每个页面执行:
$('div:jqmData(role="page")').live('pagebeforeshow',function(){
此行将以示例的方式更改导航栏文本的颜色:
$('div[data-role$="navbar"] ul li a span span').addClass('new-class');
这部分od代码可以在我的jsFiddle示例(HTML部分)
的底部找到