javascript动态创建的锚点在IE8-下无效
使用javascript动态创建的锚点(anchor),在IE8-下无法跳转都动态创建的锚点部分。
测试代码,通过创建a元素,设置a元素的name后添加到dom中,IE8需要添加xhtml申明才有效果(去掉xhtml申明也和IE7一样无效),IE7无效
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <a href="#anchorbyjs">跳到javascript动态创建的锚点</a> <div style="height:1000px">内容</div> <div id="dvAnchor">锚点内容</div> <script> var a = document.createElement('a'); a.name = 'anchorbyjs'; a.innnerHTML = ' '; document.getElementById('dvAnchor').appendChild(a); </script>
解决办法:设置容器的innerHTML创建,IE8不添加xhtml申明也行
<a href="#anchorbyjs">跳到javascript动态创建的锚点</a> <div style="height:1000px">内容</div> <div id="dvAnchor">锚点内容</div> <script> document.getElementById('dvAnchor').innerHTML = '<a name="anchorbyjs">锚点内容</a>'; </script>
加支付宝好友偷能量挖...
原创文章,转载请注明出处:javascript动态创建的锚点在IE8-下无效