2

最初,我的图像容器 div 是:

<div id="offer_image" class="img_preview_container" />
<a class="preview_overlay"></a>
</div>

然后执行:

$('#image_upload_form input').change(function() {

    if ( $(this).val() == '') return false;

    $('#image_upload_form').ajaxSubmit({
        success: function ( data ) { 
            if ( (/^http:\/\//).test(data) ) {
                $('#offer_detail input[name=image]').val(data);
                myImage = new Image();
                myImage.src = data;
                $(myImage).load(function() {
                    $('#offer_image').updateimgto(myImage.src);
                });
            }
            else {
                $('<div></div>').html(data).dialog({ title: 'Unable to upload your image' });
            }
        },
    });

});

当该 JavaScript 代码执行时,一个<img>标签被添加到原始图像容器 div 中:

<div id="offer_image" class="img_preview_container" />
    <a class="preview_overlay"></a>
    <img src="http://www.test.com/pic1.png", alt="uploaded img">
</div>

我不确定标签到底<img>是在哪里添加的。是吗:

  1. $('#offer_image').updateimgto(myImage.src)?
  2. myImage.title="my pic"输入了 JavaScript,但它没有添加到该<img>标记输出中。为什么?
4

2 回答 2

1

首先

<div id="offer_image" class="img_preview_container" /> // 

需要是

<div id="offer_image" class="img_preview_container" > 

其次这是什么 $('#offer_image').updateimgto(myImage.src);

updateimgto 是某个特定插件的方法吗?如果不是,您为什么要像对象的方法一样调用?

于 2012-09-21T02:02:42.653 回答
1
  1. 最有可能在updateimgto功能中,需要看到它才能确定。

  2. 在调用updateimgto尝试添加
    $('#offer_image img').attr('title','my pic');

    这应该有助于澄清此时图像是否已添加到 DOM 并更新标题。

于 2012-09-21T01:35:32.130 回答