0

我从 StackOverflow 得到这段代码:

$(document).ready(function() {
    $(function(){
        $('img').load(function() {
            $(this).data('height', this.height);
        }).bind('mouseenter mouseleave', function(e) {
            $(this).stop().animate({
                height: $(this).data('height') * 
                        (e.type === 'mouseenter' ? 1.5 : 1)
            });
        });
    });
});

它适用于 IE、Chrome、Firefox 和 Opera。但在 Opera 中,它仅在我第一次进入页面时才有效(如果我在地址栏中输入链接)。我有一个 4 页的网站,当我从另一个页面转到 Jquery 页面时,它不会在鼠标悬停时缩放图片。

4

1 回答 1

1

使用.each方法而不是.load

$(function(){
    $('img').each(function() {
        $(this).data('height', this.height);
    }).on('mouseenter mouseleave', function(e) {
        $(this).stop().animate({
            height: $(this).data('height') * (e.type === 'mouseenter' ? 1.5 : 1)
        });
    });
});

演示

顺便说一句:$(document).ready(function() {等于$(function() {

于 2012-09-16T14:41:05.423 回答