单击图像以在jquery中加载另一个图像

时间:2012-09-26 15:19:52

标签: jquery

我使用jquery显示图像。当鼠标移动到该图像时,我喜欢将鼠标更改为可点击,单击时,我想加载另一个图像。这是我的代码,不起作用。有什么想法吗?

html代码:

   

jquery代码:

$("#div1").click(function () {
    var img_cpu = "http://192.168.101.1/cpu.png";
    var myImage = new Image();
    $(myImage).load(function () {
        $("#div2").html(myImage)    
    }).error(function () {
        $('#div2').hide();
    })
    .attr('src', img_cpu)
});

2 个答案:

答案 0 :(得分:2)

发生了一些问题

  • 您创建了一个新图片var myImage = new Image();,但之后未指定src(因此加载事件永远不会触发)

  • myImage32未在代码中的任何位置定义

此外,请确保cpu.png

  • 位于同一个文件夹中
  • 具有最低权限(644)以供查看
  • 尚未缓存,否则永远不会发生加载事件:在这种情况下,您应检查complete属性并触发为加载事件定义的处理程序(请参阅下面的代码段)

 $(myImage).one('load', function () {   /* use one() */
     $("#div2").html(myImage32)    
 })
 .attr('src', img_cpu);

 if (!!myImage.complete) $(myImage).trigger('load');

答案 1 :(得分:1)

直接看起来,您似乎忘记将图像的URL放在加载功能中。它应该看起来像.load('url/to/image/', function() ...