Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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
Javascript 谷歌浏览器中的图像宽度问题_Javascript_Jquery_Google Chrome_Width_Image - Fatal编程技术网

Javascript 谷歌浏览器中的图像宽度问题

Javascript 谷歌浏览器中的图像宽度问题,javascript,jquery,google-chrome,width,image,Javascript,Jquery,Google Chrome,Width,Image,我正在编写一个简单的jQuery插件,当单击时,它会在屏幕中央显示带有特定类的图像,完全大小。我正在使用此html代码,其中显示我的图像: <div id="source"> <img src="" alt="" /> </div> 但在Google Chrome中,并且只有在onload事件触发时,才在Google Chrome中,此.width等于前一幅图像的宽度。这意味着,当我第一次将src设置为800px宽度的img/1.jpg时,一切正常,但

我正在编写一个简单的jQuery插件,当单击时,它会在屏幕中央显示带有特定类的图像,完全大小。我正在使用此html代码,其中显示我的图像:

<div id="source">
   <img src="" alt="" />
</div>
但在Google Chrome中,并且只有在onload事件触发时,才在Google Chrome中,此.width等于前一幅图像的宽度。这意味着,当我第一次将src设置为800px宽度的img/1.jpg时,一切正常,但当我尝试将src中的第二个图像img/2.jpg设置为600px宽度时,这个.width在onload事件中仍然返回800px!。 如何解释这种行为

UPD: 我这样设置src:

function NavClick(){
        $("#source img").attr({
            src: $(this).attr("src")
        });
        currentImage = this.indx;
    }
这是参考的缩略图图像,我使用相同的src为缩略图和全尺寸的图像测试只,稍后我会把它们放在不同的目录。 这段代码解决了我的问题,但我不太明白为什么:

function NavClick(){
        $("#source img").attr({
            src: "#"
        });
        $("#source img").attr({
            src: $(this).attr("src")
        });
        currentImage = this.indx;
    }

在设置新的src之前,我将其设置为,这可能是由于缓存图像,但仅出现在google chrome中。

使用窗口加载事件,图像在图像加载事件中未完全加载请参见问题

我没有测试它,但这可能只是做的把戏,让我知道,如果它没有或如果有

$(window).load(function(){    
    var calcWidth = $("#source img").width() + ...;
}); 

使用窗口加载事件,图像加载事件上的图像未完全加载请参阅问题

我没有测试它,但这可能只是做的把戏,让我知道,如果它没有或如果有

$(window).load(function(){    
    var calcWidth = $("#source img").width() + ...;
}); 

使用$this.width读取jQuery处理程序中的当前图像宽度。$this.width返回等于this.width的值我希望您没有img src=当页面加载时,图像的空src属性意味着源与加载当前页面的url相同,可以是POST或GET,至少在SRC属性中设置,您将节省调试时间。@regilero,谢谢,我很好地更正了它,通过快速测试,它在Chrome中运行良好-如何设置图像src?使用$this.width读取jQuery处理程序中的当前图像宽度。$this.width返回等于this.width的值我希望在页面加载时没有img src=,图像的空src属性表示源url与加载当前页面的url相同,可以是POST或GET,至少在src属性中设置可以节省调试时间。@regilero,谢谢,我已经纠正了它。通过快速测试,它在Chrome中运行良好-如何设置图像src?这不起作用,因为他在更改src时进行检查,这意味着window.onload事件早就启动了。这不起作用,因为他在更改src时进行检查,这意味着window.onload事件早就启动了。