Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery不会更改div的margin属性_Jquery_Margin - Fatal编程技术网

jquery不会更改div的margin属性

jquery不会更改div的margin属性,jquery,margin,Jquery,Margin,这是我关于JQuery的第一个问题 我有三个按钮。它们都是水平对齐的,如: 1st:Button2nd:Button3rd:Button 我有一个名为popup的div 如果单击按钮1,div应显示为: 1st:Button2nd:Button3rd:Button div:弹出窗口 如果我单击第二个按钮,则应为: 1st:Button2nd:Button3rd:Button div:弹出窗口 对于第三个按钮: 1st:Button2nd:Button3rd:Button div:弹出窗口 使用J

这是我关于JQuery的第一个问题

我有三个按钮。它们都是水平对齐的,如:

1st:Button
2nd:Button
3rd:Button

我有一个名为
popup
的div

如果单击按钮1,div应显示为:

1st:Button
2nd:Button
3rd:Button

div:弹出窗口

如果我单击第二个按钮,则应为:

1st:Button
2nd:Button
3rd:Button

div:弹出窗口

对于第三个按钮:

1st:Button
2nd:Button
3rd:Button

div:弹出窗口

使用JQuery,我选择了元素。我计算按钮左侧的边距,并将其存储在变量中。我让潜水器隐形。然后我将该边距应用于div,最后使其可见。这是代码

<script>
    $('img').click(function () {
        var clickedImageMargin = $(this).css('margin-left');
        alert(clickedImageMargin);
        $('#popup').hide();
        $('#popup').css({ 'margin-left': clickedImageMargin + 100 });
        $('#popup').show();
    });
</script>

$('img')。单击(函数(){
var clickedImageMargin=$(this.css('margin-left');
警报(单击图像边距);
$('弹出').hide();
$('popup').css({'marginleft':clickedImageMargin+100});
$('弹出窗口').show();
});

但div并没有改变其立场。可能有什么问题?

问题是
$(this).css('margin-left')
返回一个字符串,例如“200px”
var clickedImageMargin = $(this).position().left;

如果将100添加到该值中,将使用字符串连接,因此您设置的值为“200px100”,这是无效的。

您能提供一个JSFIDLE吗?JSFIDLE是什么意思?转到并创建一个包含html、css、javascript的页面,然后与usya共享这是真的。谢谢你指出那个错误。现在我使用parseInt()获得它