jQuery宽度(%)不会在windowResize上停止计算吗?

用户名

这是我的代码:

http://jsfiddle.net/7cXZj/

    var callback = function () {

  $('.progress-bar').width($('.progress-bar').parent().width() - 190);


  $(".mainpart-background").animate({ width: "80%" }, 800 , function(){
    var sidepartposition = $(".progress-bar").width() * 0.1 + $(".sidepart-content").width() * 0.5 ;
   $(".sidepart").animate({ "margin-right": - sidepartposition }, 100); 
   });

};
$(document).ready(callback);
$(window).resize(callback);


var sidepartpositionResize = $(".progress-bar").width() * 0.1 + $(".sidepart-content").width() * 0.5 ;

$(window).resize(function(){

   $(".sidepart").css( "margin-right", "sidepartpositionResize" );

});

这就是问题:

调整窗口大小时,显示为“ 20%”的范围消失。为什么?用Firebug对其进行检查,您将看到jQuery不会停止计算80%,它将80.00213降至79.1241至79.12523 ...依此类推。突然在1-4秒后就完成了这个奇怪的过程。然后将显示20%的跨度内容。

请注意:此代码应在响应式网站上有效。

我是JS初学者。非常感谢您的帮助!

阿达里巴

尝试以下代码:http : //jsfiddle.net/7cXZj/5/

此代码使您可以绑定到调整大小事件的末尾,并且在调整窗口大小期间不会多次执行该函数。

var animate = function(){
console.log('animando');
$(".mainpart-background").css('width', 0);
$(".mainpart-background").animate({
        width: "80%"
    }, 800, function () {
        var sidepartposition = $(".progress-bar").width() * 0.1 + $(".sidepart-content").width() * 0.5;

        $(".sidepart").animate({
            "margin-right": -sidepartposition
        }, 10);
    }
);    
}

window.resizeEvt;

$(document).ready(function(){
animate();

$(window).resize(function()
{
    clearTimeout(window.resizeEvt);
    window.resizeEvt = setTimeout(function()
    {
        animate();
    }, 250);
});
});

希望能帮助到你。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery返回false不会在keydown上停止滚动

来自分类Dev

代码不会在断点上停止

来自分类Dev

伺服不会在FPGA上停止

来自分类Dev

Vulkan计算着色器不会在无限循环上停止

来自分类Dev

(C ++)不会在std :: cin上停止并进入无限循环吗?

来自分类Dev

(C ++)不会在std :: cin上停止并进入无限循环吗?

来自分类Dev

Eclipse不会在断点处停止/中断吗?

来自分类Dev

循环遍历对象数组不会在 if 语句上停止

来自分类Dev

NSScrollView不会在NSAlert上作为附件滚动吗?

来自分类Dev

Pygame不会在Mac上加载我的相机吗?

来自分类Dev

音频事件不会在播放事件上触发jQuery

来自分类Dev

jQuery不会在动态内容上添加样式

来自分类Dev

jQuery UI动画不会在隐藏元素上发生

来自分类Dev

jQuery change()不会在新元素上触发

来自分类Dev

jQuery不会在“刷新”元素上注册事件

来自分类Dev

jQuery,提交不会在表单上取消

来自分类Dev

gdb不会在断点处停止

来自分类Dev

fgetc()不会在EOF中停止

来自分类Dev

UIActivityIndicator不会在iOS中停止

来自分类Dev

awatch不会在指定地址停止

来自分类Dev

MySQL不会在关闭时停止

来自分类Dev

Visual Studio 2013不会在错误的代码行上停止

来自分类Dev

具有`set -e`的Bash脚本不会在`... && ...`命令上停止

来自分类Dev

apt-get不会在Ctrl-c上停止,该怎么办?

来自分类Dev

具有`set -e`的Bash脚本不会在`... && ...`命令上停止

来自分类Dev

为什么逻辑评估不会在第一个“假”结果上停止?

来自分类Dev

JScrollPane不会在JPanel上滚动

来自分类Dev

virtualenv不会在Windows上激活

来自分类Dev

Java不会在JPanel上绘图

Related 相关文章

热门标签

归档