请教js强人,动态创建问题,有难度

ddaanniieell 2008-07-28 11:03:44
/*
以上代码,个人觉得没有问题,但在页面中未达到预计的效果
如将Img固定写在页面中,则创建的Map无任何问题。
不明其理,特些求教。
我不知道我有多少分,没看,给出100分,
各位Js狂人,相信您如果有意解决访问题也就不会在乎分了。
谢。。。。。。。。
邮箱:daniel_5945@163.com
QQ:276373414
*/
<html>
<body>
<div id="aaaaa">
</div>
<script type="text/javascript">
var imgObj = document.createElement("img");
imgObj.id = "imgabc";
imgObj.src='/i/eg_planets.gif';
imgObj.usemap="#planetmap";
aaaaa.appendChild(imgObj);

var objmap = document.createElement("map");
objmap.name="planetmap";
objmap.id ="planetmap";
aaaaa.appendChild(objmap);

var areaObj = document.createElement("AREA");
areaObj.id="abc";
areaObj.shape="poly";
areaObj.target="_blank";
areaObj.coords="3,11,139,15,138,52,7,53";
areaObj.href="http://news.163.com";
areaObj.alt="aaaaaaaaaaaaaaaaaaaaaa";
areaObj.title="bbbbbbbbbbbbbbbbb";
objmap.appendChild(areaObj);
</script>
</p>

</body>
</html>
...全文
112 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ddaanniieell 2008-07-29
  • 打赏
  • 举报
回复
我试试看,我估计不是那量。
uddwfn521 2008-07-29
  • 打赏
  • 举报
回复
部分代码 不好调..
其实 你干脆就直接用innerHTML得了
比如

xx.innerHTML+="<map name='xxx'>........................................</map>";
ddaanniieell 2008-07-29
  • 打赏
  • 举报
回复
/*
这个,帮人帮到底
我实现调不出来了
现在图片显示没有问题,Alert出来的InnerHtml也没有问题,
但热区就是没有效果,上代码,请各位JS强人,帮帮忙。

*/

if (!isExist)
{
var deltaX = tiles[i].getColumn() * TileSize;
var deltaY = tiles[i].getRow() * TileSize;

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

tile.id = tileId+"_DIV";
tile.style.position = "absolute";
tile.style.left = deltaX + "px";
tile.style.top = deltaY + "px";

// tile.onmousedown = null;



var tileImage = document.createElement("IMG");

tileImage.id = tileId+"_IMG";
tileImage.style.position = "absolute";
//tileImage.style.left = deltaX +"px";//为图片定位
//tileImage.style.top = deltaY + "px";//为图片定位

tileImage.src = tiles[i].getSrc();
tileImage.galleryImg = 'no';
//tileImage.onmousedown = "alert('"+tiles[i].getSrc()+"');";
tileImage.usemap = "#"+tileId;




var useMap = document.createElement("MAP");
useMap.id = tileId;
useMap.name=tileId;


var oAREA = document.createElement('AREA');

oAREA.shape = 'poly';
oAREA.coords = '0,0,100,0,100,100,0,100';
oAREA.href = 'http://news.163.com';


useMap.appendChild(oAREA);
tile.appendChild(tileImage);
//mapDiv.appendChild(tileImage);
tile.appendChild(useMap);
//mapDiv.appendChild(useMap);
//alert(tile.innerHTML);

mapDiv.appendChild(tile);
n++;
}
leosming 2008-07-29
  • 打赏
  • 举报
回复
2楼的JS跟你的顺序不一样
O_I_O 2008-07-29
  • 打赏
  • 举报
回复
up
ddaanniieell 2008-07-29
  • 打赏
  • 举报
回复
呵呵,我找到原因了,是Alt的事儿,不能设置。可能不是内置方法。结贴!!!!!!!!!!谢楼上两位。
ddaanniieell 2008-07-29
  • 打赏
  • 举报
回复
郁闷了,郁闷了,楼上的哥哥,问题到是解决了,但我就没看出来,咱俩的JS哪里有不同,麻烦给个解释OK?
两位一人50不知是否同意?
ddaanniieell 2008-07-29
  • 打赏
  • 举报
回复
算了,还是先结贴吧,我已经改用InnerHtml了,但效果依旧。。。。。。。何解?
uddwfn521 2008-07-28
  • 打赏
  • 举报
回复
修改了下

http://www.fuyangyang.com/1.html

点击oo的脸部...
CarlosYoung 2008-07-28
  • 打赏
  • 举报
回复
稍作调整
改一下下面这句:


imgObj.usemap="#planetmap";


改成



imgObj.setAttribute('usemap','#planetmap');


就可以了!

87,902

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧