javascript – 使用JS DOM将html标记替换为另一个标记
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 使用JS DOM将html标记替换为另一个标记,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2552字,纯文字阅读大概需要4分钟。
内容图文
![javascript – 使用JS DOM将html标记替换为另一个标记](/upload/InfoBanner/zyjiaocheng/751/481cac1cf9484453ac79777a33cb1659.jpg)
我对javascript和DOM相当新,我在使用javascript操作DOM时出现以下html代码的问题.
<html>
<head>
<title>Testing</title>
</head>
<body>
<marquee direction=up height=400 scrollAmount=3.7 scrollDelay=70 onm ousedown="this.stop()" onm ouseover="this.stop()" onm ousemove="this.stop()" onm ouseout="this.start()">
<a href="#"> <span>Lion</span></a><br><br>
<a href="#"> <span>Tiger</span></a><br><br>
<a href="#"> <span>Giraffe</span></a><br><br>
<a href="#"> <span>Dinosaur</span></a><br><br>
<a href="#"> <span>Cat</span></a><br><br>
<a href="#"> <span>Dog</span></a><br><br>
<a href="#"> <span>Llama</span></a><br><br>
<a href="#"> <span>Rat</span></a><br><br>
<a href="#"> <span>Rhino</span></a><br><br>
<a href="#"> <span>Reindeer</span></a><br><br>
<a href="#" ><span >buffalo</span></a><br><br>
<a href="#" ><span >Yak</span></a><br><br>
<a href="#" ><span >Deer</span></a><br><br>
<a href="#" ><span >moose</span></a><br><br>
<a href="#" ><span >Rabbit</span></a> <br><br>
<a href="#" ><span >Duck</span></a> <br><br>
<a href="#" ><span >Peacock</span></a><br><br>
<a href="#" ><span >Crow</span></a><br><br>
<a href="#" ><span >Raven</span></a><br><br>
<a href="#" ><span >Swan</span></a><br><br>
</marquee>
<input type="button" value="Set Me Fixed" onclick="setMeFixed();" />
</body>
</html>
对不起,如果上面的HTML代码是坏的.我正在写一个关于由我在这里简化的网站生成的相同的greasemonkey脚本.所以我无法控制它.
我希望[marquee]标签被[div]标签替换,以便它变为静态,我不必永远等待选框中的第100个链接出现. ;-).所以我写了下面的脚本. (我是js编程的新手,是的,我知道我的脚本很糟糕:-))
function setMeFixed(){
var fixedElement=document.createElement('div');
var marqueeElement=document.getElementsByTagName('marquee')[0];
//var clonedMarqNodes=marqueeElement.cloneNode(true);
for(i=0;i<marqueeElement.childNodes.length;i++){
fixedElement.appendChild(marqueeElement.childNodes[i]);
}
marqueeElement.parentNode.replaceChild(fixedElement,marqueeElement);
}
发生了很多问题.结果输出没有显示很少的链接.
在输出中看不到孔雀,乌鸦,天鹅,乌鸦,并且所有标签在变为静态之后都会混乱,上面打印空格并且链接之间没有中断.
作为一个初学javascript程序员我被困在这里,任何正确方向的帮助将非常感激.有没有办法优雅地解决这个问题?谢谢.
保罗布拉德.
PS:我使用的是Fx 3.0.11.
解决方法:
你考虑过使用innerHTML吗?
var marq = document.getElementsByTagName('marquee')[0];
var div = document.createElement('div');
div.innerHTML = marq.innerHTML;
marq.parentNode.appendChild(div);
marq.parentNode.removeChild(marq);
不是最有效,但直截了当.
见:http://jquery.nodnod.net/cases/586
内容总结
以上是互联网集市为您收集整理的javascript – 使用JS DOM将html标记替换为另一个标记全部内容,希望文章能够帮你解决javascript – 使用JS DOM将html标记替换为另一个标记所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。