+ -
当前位置:首页 → 问答吧 → 问个关于网页头部声明能否通过JavaScript修改呢

问个关于网页头部声明能否通过JavaScript修改呢

时间:2010-05-11

来源:互联网

我这几天在修改一个cms系统的页面
页面头部body以上的部分我没法操纵,是自动生成的,
各个栏目都用的是这个通用的头部,只有基本只有title的内容是后台自动修改的。
公司让我做页面,做出来的系统默认生成的头部只有这样的
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html  lang="zh-CN">
而且还出来三个css文件的引用,这三个引用写的很霸道,把页面超链接的颜色、鼠标经过都给控制了。这还问题不大。
就是在<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html  lang="zh-CN">
声明下我用div根本没法做浏览器兼容性啊!
最关键的请问各位是否有通过JavaScript把头部声明给它修改了,或者给提供个解决方案呗!
万能的网友啊!---帮帮我啊!

作者: guozhidong   发布时间: 2010-05-11

仅适用于IE,且有个BUG:IE将DOCTYPE元素当做是注释,nodeValue时会去掉前4个字符和后3个字符。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>无标题文档</title> </head> <body> <script language="javascript"> window.onload=function(){ alert(document.firstChild.nodeValue); document.firstChild.nodeValue=""; alert(document.firstChild.nodeValue); } </script> </body> </html>
 提示:您可以先修改部分代码再运行
仅适用于IE,且有个BUG:IE将DOCTYPE元素当做是注释,nodeValue时会去掉前4个字符和后3个字符。

[ 本帖最后由 hsb008 于 2010-5-11 18:02 编辑 ]

作者: hsb008   发布时间: 2010-05-11

试试:
<!doctype html public "-//w3c//dtd html 4.0//en-us"> <html> <head> <script language="JavaScript"> function function1() { document.doctype.parentNode.removeChild(document.doctype); } </script> </head> <body> <input type="button" onClick="function1();" value="删除 doctype"> </body> </html>
 提示:您可以先修改部分代码再运行
貌似适用于非IE浏览器,和楼上正好一对,呵呵

[ 本帖最后由 hutia 于 2010-5-11 18:04 编辑 ]

作者: hutia   发布时间: 2010-05-11

能不能通过JavaScript的replace函数来把<!doctype html public "-//w3c//dtd html 4.0//en-us"> 给替换成<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">呢?
感谢楼上两位朋友的支持!继续寻找最佳解决方案!
或者哪位高手给我讲讲
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">和
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
在ie和Firefox下有啥区别和注意事项呗!
不好整啊!

[ 本帖最后由 guozhidong 于 2010-5-12 09:04 编辑 ]

作者: guozhidong   发布时间: 2010-05-11