2013-10-25 48 views
0

我试图给旧的所见即所得FCKEditor中的图像添加宽度和高度。 问题是,当我试图让自然的宽度/高度,我得到0值。FCKEditor,为img元素添加宽度和高度

我在做什么错?

这里是代码:

var zaj = FCKeditorAPI.GetInstance('hometext'); 

pz = zaj.GetXHTML(); 

dom_zaj = document.createElement('div'); 
dom_zaj.innerHTML = pz; 

$(dom_zaj).find('img').each(function(i, element) { 
    //var w_set = $(element).attr('width'); 
    //var h_set = $(element).attr('height'); 
    var w_native = element.naturalWidth; 
    var h_native = element.naturalHeight; 

    $(element).attr('width', w_native); 
    $(element).attr('height', h_native); 
}); 

回答

0

我设法解决我自己的问题。由于图片在编辑器中的位置,我必须使用jquery.onload()自己加载它们。 (并且从宽度/高度改变为css风格)

var $images = $(dom_zaj).find('img'); 
    var imagesLength = $images.length; 
      $images.load(function(){ 
     var w_native = this.naturalWidth; 
     $(this).css('width', w_native+'px'); 
     imagesLength = imagesLength-1; 
     if(imagesLength === 0){ 
     pz = dom_zaj.innerHTML; 
     zaj.SetHTML(pz); 
     } 

      }).error(function(){ 
     imagesLength = imagesLength-1; 
    });