jQuery调整大小不能在FireFox,Chrome和Safari上工作

前端之家收集整理的这篇文章主要介绍了jQuery调整大小不能在FireFox,Chrome和Safari上工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
$("#dvMyDIV").bind("resize",function(){
    alert("Resized");
});

要么

$("#dvMyDIV").resize(function(){
    alert("Resized");
});

问题

>为什么这不能在FireFox,Chrome和Safari上工作?
>这可以被认为是一个jQuery错误,因为调整大小不是为其他浏览器处理?
>唯一的解决方法调用SetTimeout函数来检查clientHeight和clientWidth?
>使用jQuery的任何解决方法

解决方法

我相信JavaScript调整大小事件只适用于框架或窗口,而不适用于DIV.

例如见this page

The onResize even handler is use to execute specified code whenever a user or script resizes a window or frame. This allows you to query the size and position of window elements,dynamically reset SRC properties etc.

所以如果你想检测窗口大小调整大小,在jQuery中你应该使用$(window).resize(function(){});

编辑:如果你想看DIV的大小,这取决于你的意图.如果您使用JavaScript调整大小,那么您可以实现一种方法来执行调整大小,并具有调用任何其他调整大小代码方法.

否则,如果您只是在调整窗口大小时调整DIV大小,那么只需将调整大小的监听器附加到窗口,然后检查DIV是否被调整大小(即存储宽度的旧值) / height并检查它们的大小)?

最后,您可以考虑在width / height属性上使用watch,尽管我不知道这是否完全与浏览器兼容(认为这可能仅仅是Mozilla).我确实发现this jQuery plugin看起来像它可能做同样的事情(有一些轻微的修改).

猜你在找的jQuery相关文章