0

我们通过 jquery.ajax 加载 jQuery Mobile 列表视图

$.get('LOADER?......,  
function(html) {  
 if (html != '') {  
      $('#id').html(html).find('ul').listview().listview('refresh'); 

在这个列表视图中,我们有一个所有 li-Items 的点击事件,看起来像这样......

$('#id li').live('click',function() {  
    if ($(this).data('icon') == 'star') {  
        $(this).buttonMarkup({icon:'check'});  
    } else {  
        $(this).buttonMarkup({icon:'star'});  
    }  
});  

..但是如果单击一个项目,我们将拥有所有两个条件!为什么?

在浏览器上的 pagerefresh F5 后它工作正常?!?!?!?

4

1 回答 1

0

在对这个问题重新审视之后,我明白真正的问题是什么!我们没有没有点击的问题!我们在页面刷新之前点击两次!

这来自加载第二页后的 jQuery Mobile Pageinit ......

我们以这种方式解决了这个问题:

$('#id li').die('click').live('click', function() {  

无论如何:感谢您的帮助

于 2013-02-12T15:20:04.133 回答