我创建了一个bookmarklet(微小的javascript函数),在ie7,8,9和Firefox,Chrome,safari中运行良好,但它不能在IE10中运行。当用户点击书签栏上的书签按钮时,实际上不会在IE10中打开。
<a href="javascript:(function(){var jsScript=document.createElement('script');
jsScript.setAttribute('type','text/javascript');
jsScript.setAttribute('src', '<?php echo base_url()?>bookmarklet');
document.getElementsByTagName('head')[0].appendChild(jsScript);
var jq=document.createElement('script');jq.setAttribute('type','text/javascript');jq.setAttribute('src', '<?php echo base_url()?>js/jquery/jquery-1.8.3.js');
document.getElementsByTagName('head')[0].appendChild(jq);})();"
title="bookmarklet"
alt="bookmarklet"
name="bookmarklet"
class="bookmarklet_bt_dragable"
style="cursor:move;">bookmarklet</a>
小书签按钮,通过单击必须打开的小书签。
请有人建议我如何处理这个问题。
感谢。
答案 0 :(得分:1)
在我使用的代码片段中
document.getElementsByTagName('head')[0]
创建头对象以将我的javaScript文件附加到它。
由于此行,IE10对待未分级,因此在添加bookmarklet时丢弃了javascript代码。
请使用
document.getElementsByTagName('head').item(0)
而不是
document.getElementsByTagName('head')[0]
这一行,如果任何一个人面临这个问题,它将会运作良好。