我在FF中有这样的jQuery代码,但在IE8中完全失败:
$('#tekst img').each(function(){
var scrValue = $(this).attr('src').substring(0,4);
var imgTyp = $(this).attr('class').substring(1);
if(scrValue == 'tbid')
{
var splitedString = $(this).attr('src').split(':');
var imageID = splitedString[1];
$(this).append("<img src='ShowImage.ashx?ID=" + imageID + "' alt= '' />");
}
});
在'IF'部分,IE首先退出(srcValue == true),甚至无法显示第一个图像..
有没有人有任何想法?
答案 0 :(得分:2)
似乎你在img元素中看到了新的图像元素...... 我不认为这是你想要做的......
如果要在刚刚选择的图像之后添加img,可以在jquery中使用after()函数。
或者如果您想将img添加到图像容器中,您可以执行以下操作:
$("#tekst").append("<img src='ShowImage.ashx?ID=" + imageID + "' alt= '' />");
或
$(this).parent().append("<img src='ShowImage.ashx?ID=" + imageID + "' alt= '' />");
而不是:
$(this).append("<img src='ShowImage.ashx?ID=" + imageID + "' alt= '' />");
答案 1 :(得分:0)
首先尝试提醒图像元素代码以查看其是否正确,如果是,请尝试执行以下操作:
$("<img/>").attr('src','ShowImage.ashx?ID=' + imageID).attr('alt','').appendTo(this);
可能是你创建元素的方式。
fir实例在元素属性边界alt= ''
中添加空格到alt=''