javascript - jQuery 动画向左离开屏幕

标签 javascript jquery html css

使用以下函数,我可以将一个 div 动画化到左侧,但问题是,该 div 超出了屏幕区域。无论如何,我可以让 #mydiv 只在 #container 的左边吗?如果 #mydiv 已经在左侧,那么它应该什么也不做。

 $('.left').click(function() {
        $('#myDiv').animate({
            left: '-=30'
            }, 400, function() {
            // callBack
    });

HTML:

<div id="container">
        <a class="left" href="#">Left</a>
    </div>

最佳答案

为了获得它,您需要验证您要移动的 div 是否位于距离您的 left 侧至少 30px #container.

$('.left').click(function() {
if (parseInt($('#myDiv').css('left')) >= 30) {     
    $('#myDiv').animate({
        left: '-=30'
        }, 400, function() {
        // callBack
    });

     }
 });

示例:http://jsfiddle.net/X2TdJ/1/

如果您的 #container 将位于您 body 的左侧,marginLeft 将不会停止并超出您的 #container div。

此处示例:http://jsfiddle.net/DAEsX/1/

关于javascript - jQuery 动画向左离开屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11863840/

相关文章:

jquery - parent 和附录不能一起工作?

html - 如何对齐按钮中的文本并将按钮与输入字段对齐

javascript - 如何在弹出窗口中显示 jquery 验证错误消息?

javascript - JQuery 元素缺少 detach() 方法

javascript - FabricJs - 限制主对象内添加对象的移动区域

javascript - 未捕获的类型错误 : Cannot read property 'msie' of undefined - jQuery tools

javascript - $(document).ready 函数不会启动

jquery - jquery 版本更改时代码不起作用

javascript - MVC使用jquery代替提交按钮

javascript - 选择不同的 HTML 元素进行换行