我为click事件设置了事件监听器,将div移动到新位置。 div开始左边的值为100.点击" left"值更改为300但div仍然在屏幕上的相同位置。在Chrome和IE中,它实际上会移动到新位置。我如何从FireFox获得相同的东西?我可以看到事件被解雇了。警告框将位置显示为300,但div没有更改屏幕上的位置。
$(menu_button_wrapper).click(function() {
$(home).css({
'left': 300
})
});
var temp = $(home).position();
alert(temp.left);
编辑以添加HTML:
<div id="menu_button_wrapper">
<table id="menu_button" cellpadding=5 cellmargin=0>
<tr>
<td align=center>
Menu
</td>
<td align=center>
<img src="elephant.png" width=50>
</td>
</tr>
</table>
</div>
答案 0 :(得分:1)
在此处查看https://jsfiddle.net/3hkqbt32/
我只是使用不同的选择器进行测试,如下所示:
$('button').click( function() {$('.home').css({'left':300})} );
var temp = $(home).position();
alert(temp.left);
对我来说,它在Firefox中运行良好。它对你有用吗?
此外,当您在jQuery中定位id时,您应该使用以下语法:$('#menu_button_wrapper')
修改强>
而不是使用left:300
使用margin-left
出于某种原因,Firefox不会像你网络上的其他浏览器那样得到它。