Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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 调整窗口大小后重新计算高度_Jquery_Jquery Animate_Height_Responsive Design - Fatal编程技术网

Jquery 调整窗口大小后重新计算高度

Jquery 调整窗口大小后重新计算高度,jquery,jquery-animate,height,responsive-design,Jquery,Jquery Animate,Height,Responsive Design,我创建了一个函数,当我将鼠标悬停在父对象上时,它会显示一个“语音气泡”。但是,气泡被设置为显示在父对象上方(根据其高度计算) 我正试图将其应用到一个响应性强的设计中,因此宽度和高度都是动态的。我尝试在窗口调整大小后使用以下代码运行该函数: $(window).resize(function() { $('.popup').popup(); }).trigger('resize'); 这似乎能起到作用,但它相当麻烦。你可以理解我退房的意思 在调整窗口大小之前,语音气泡可以正常工作,但一旦

我创建了一个函数,当我将鼠标悬停在父对象上时,它会显示一个“语音气泡”。但是,气泡被设置为显示在父对象上方(根据其高度计算)

我正试图将其应用到一个响应性强的设计中,因此宽度和高度都是动态的。我尝试在窗口调整大小后使用以下代码运行该函数:

$(window).resize(function() {
    $('.popup').popup();
}).trigger('resize');
这似乎能起到作用,但它相当麻烦。你可以理解我退房的意思

在调整窗口大小之前,语音气泡可以正常工作,但一旦调整了窗口大小,并且您将鼠标悬停在其中一个触发器对象上,语音气泡将为大约5次重复设置动画

毫无疑问,这本书最初不是为响应性设计而写的,我也不是一名JS开发人员,因此,如果有人看到任何明显的改进,我很乐意接受这是因为popup()多次绑定到事件。就用这个

$(document).ready(function() {
$('.popup').popup();
});
并且,在鼠标上方设置弹出窗口的位置

移除-

$(window).resize(function () {
    $('.popup').popup();
  }).trigger('resize');
然后加上

  $('.popup').popup();

看这个-

这对我不起作用。一旦父容器的高度发生变化,语音气泡就不再位于正确的位置。因此,我在窗口调整大小事件中运行函数。在我最初的JSFIDLE中很难注意到这一点,因为父容器中只有“Lorem Ipsum”,并且在第二个字符放到下一行之前,高度不会改变。然后,您必须在鼠标上方设置弹出窗口的顶部和左侧位置。这将解决您的问题。然而,如果你在window.resize内调用这个函数,它会被一次又一次地绑定。哦!所以我只需要在mouseover()函数中设置高度变量?啊!那太容易了!而且很有效!!啊,这让我很生气。但我也很高兴。哈哈,谢谢你的帮助!对只需更新mouseover函数来设置popup div的位置。不要在初始化时设置位置。这与我向@Pitchai提到的原因不一样-当容器的高度改变时,语音气泡不再位于正确的位置。你看到了吗?它在那里工作。告诉我你正在使用哪种浏览器如果你通读我和@Pitchai之间的评论线程,你就会明白为什么这不起作用。在JSFIDLE中,尝试缩小窗口,直到文本变为两行。语音气泡不再显示在正确的位置。