在此代码片段中,document.createElement('a') 标记在 IE8 中不起作用。它在 Chrome 和 Firefox 中运行良好。当我通过 IE 检查时,似乎是第一行代码被破坏了。
item = document.createElement('a');
item.setAttribute('id', 'memorize');
item.innerHTML = "<?php echo wzfactory::get_xml('menu_item', 4, $com); ?>";
item.setAttribute('class', 'menu_button');
item.onclick = function() {redirect('memorizor', 'memorize', 0);};
menu_div.appendChild(item);
有谁知道为什么会出现这种情况,以及是否有蹩脚的浏览器解决方法?我一直找不到解决方法。
最佳答案
有一些事情可能会“破坏”功能。请尝试以下操作:
item = document.createElement('a');
item.id = 'memorize';
item.href = "#";
item.innerHTML = "<?php echo wzfactory::get_xml('menu_item', 4, $com); ?>";
item.className 'menu_button';
item.onclick = function() {
redirect('memorizor', 'memorize', 0);
return false;
};
menu_div.appendChild(item);
首先,直接分配id
,而不是通过setAttribute
,其次,没有href
的 anchor 将变成纯粹的文本,而不是链接,因此您必须分配该属性。
关于javascript - document.createElement 在 IE8 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7377727/