Firefox处理得很好,但Safari和IE7无声地失败,不插入元素.
<script type="text/javascript">
var ul = document.getElementById('xg_navigation').getElementsByTagName('ul')[0];
ul.innerHTML = '<li id="xg_tab_home" class="xg_subtab"><a href="http://somedomain.com/">Some Text</a></li>' + ul.innerHTML;
</script>
Run Code Online (Sandbox Code Playgroud)
这是一个exisitng html结构,如:
<div id="xg_navigation">
<ul>
<li><a href="...">Foo</a></li>
...
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
我无法控制HTML,但我确实能够在页面正文中插入一段javascript.
可悲的是,我似乎对跨浏览器javascript支持的教育很差.我是否需要以某种方式通过onPageLoad类型的事件来解决它?
好像你在加载DOM之前操作它,尝试在window.onload监听器中添加那段代码:
<script type="text/javascript">
window.onload = function() {
var ul = document.getElementById('xg_navigation').getElementsByTagName('ul')[0];
ul.innerHTML = '<li id="xg_tab_home" class="xg_subtab"><a href="http://somedomain.com/">Some Text</a></li>' + ul.innerHTML;
}
</script>
Run Code Online (Sandbox Code Playgroud)