【发布时间】:2012-09-06 16:06:07
【问题描述】:
单击超链接时,我会更改页面上 DIV 的 left 或 scrollLeft() 值。在我的笔记本电脑(Windows:Firefox、Chrome、Opera、IE)上测试时一切正常,但在转移到平板电脑(Xoom2)时没有任何效果......例如,考虑以下......
$('#clickme').live("tap", function(event){
alert($("#entry_level_phones").scrollLeft()) // the alert outputs a value which is a number so the .scrollLeft() is captured
$("#entry_level_phones").scrollLeft(500) // nothing happens? This is ignored?
});
在这个例子中,我可以保证 #clickme 是一个 href 和 #entry_level_phones 这是一个 div 存在。
如果我尝试使用好的旧 JavaScript 来做同样的事情......我会得到相同的结果
$('#clickme').live("tap", function(event){
alert($("#entry_level_phones").scrollLeft()) // the alert outputs a value which is a number
document.getElementById("entry_level_phones").style.left = 500 + "px" // nothing happends? This is ignored?
});
即使我尝试更改诸如$("#entry_level_phones") 的 CSS 之类的微不足道的东西,但我可以发出警报、确认或使用窗口对象。有人可以解释为什么吗?
我的项目使用 jQuery、jQuery UI 和 jQuery Mobile。我是否需要刷新页面才能使用$.mobile.changePage更改css
【问题讨论】:
-
$("#entry_level_phones") 可见吗? “如果它所应用的元素被隐藏,则将不起作用。” api.jquery.com/scrollLeft
标签: jquery jquery-ui jquery-mobile