weixin_42299803 2009-03-18 19:05
浏览 162
已采纳

请 牛人给看看 这个东西 闹死我了 js 动态创建div

[code="java"]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



<!-- .wd_picc1{ width:131px; height:115px; padding:5px 21px; float:left; } .wd_pic_pic{ width:130px; height:90px; } .wd_pic_text12{ width:auto; text-align:center; height:13px; } .clear{ clear:both; margin:0px; padding:0px; } --> var bfIL; function BFImage(arg0, arg1, arg2, arg3){ this.name = arg0; this.tag = arg1; this.caption = arg2; this.priceDesc = arg3; } function showBFImages(arg0, arg1){ var bfwdImageListDiv = document.getElementById(arg0); var bfImage; bfwdImageListDiv.innerHTML = ""; for(var i=1;i<=bfIL.length;i++){ bfImage = bfIL[i-1]; if(bfImage.tag==arg1){ wd_picc1 = document.createElement("div"); wd_picc1.setAttribute('class','wd_picc1'); wd_pic_pic = document.createElement("div"); wd_pic_pic.setAttribute('class','wd_pic_pic'); wd_a = document.createElement("a"); wd_a.setAttribute('href',bfImage.name); wd_a.setAttribute('rel',"lightbox[bafangwang]"); wd_a.setAttribute('title',bfImage.caption); wd_a.setAttribute('target',"_blank"); wd_img = document.createElement("img"); wd_img.setAttribute('src',bfImage.name); wd_img.setAttribute('width',"130"); wd_img.setAttribute('height',"90"); wd_a.appendChild(wd_img); wd_pic_pic.appendChild(wd_a); wd_picc1.appendChild(wd_pic_pic); wd_pic_text12 = document.createElement("div"); wd_pic_text12.innerHTML = bfImage.caption; wd_pic_text12.setAttribute('class','wd_pic_text12'); wd_picc1.appendChild(wd_pic_text12); wd_pic_text122 = document.createElement("div"); wd_pic_text122.innerHTML = bfImage.priceDesc==''?"&nbsp;":bfImage.priceDesc; wd_pic_text122.setAttribute('class','wd_pic_text12'); wd_picc1.appendChild(wd_pic_text122); bfwdImageListDiv.appendChild(wd_picc1); } } document.getElementById("code").value= bfwdImageListDiv.innerHTML; }


s1
s2
bfIL = new Array(6); bfIL[0] = new BFImage("0bdba4e1-2783-4ed5-ad2a-998bb02cfd0d.jpg", 1, "标题一", ""); bfIL[1] = new BFImage("abee9a0c-cfeb-4e9e-de3f-914d7c53fd39.jpg", 1, "标题二", ""); bfIL[2] = new BFImage("ba3e9a6c-deb7-4418-ab37-90e27c531939.jpg", 1, "标题三", ""); bfIL[3] = new BFImage("0d90e78b-0db2-429b-a1ee-2a28b91b8068.jpg", 2, "标题一2", ""); bfIL[4] = new BFImage("0ac1d905-b15d-47f9-9eb4-034cb9be44a2.jpg", 2, "标题二2", ""); bfIL[5] = new BFImage("0bd2c9e5-a014-4516-83d8-56f40f628a87.jpg", 2, "标题三2", ""); //document.getElementById("bfwdImageList").innerHTML= document.getElementById("code").value;


[/code]
点击s1或s2 让动态生成的div 横排显示(现在ie6显示竖排,ff显示正常)

  • 写回答

2条回答 默认 最新

  • playfish05 2009-03-18 20:29
    关注

    OK,经过反复实验,发现你这是碰到了IE的一个渲染问题,除了IE本身是垃圾的问题之外。。你的代码的写法也不是很规范,所以改正过来就可以了。

    首先,你只要将
    wd_picc1.setAttribute('class','wd_picc1');

    这句话改成:

    wd_picc1.className = "wd_picc1";

    这个例子马上就能用。

    关于这个问题跟你的代码,还有一些补充:

    第一,注意全局变量。如果这个变量是局部的,一定要加上var来定义才行,不然会变成全局变量,会带来很多隐患。比如

    wd_picc1 = document.createElement("div");

    应该改成

    var wd_picc1 = document.createElement("div");

    第二,面向对象的写法,更方面快捷的写法。

    wd_picc1.setAttribute('class','wd_picc1'); 可以改成

    wd_picc1.className = "wd_picc1";
    同理,其他的, wd_a.setAttribute('href',bfImage.name);也可以改成

    wd_a.href=bfImage.name;当然,还是要注意加上var

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止