javascript - document.createElement 在 IE8 中不起作用

标签 javascript internet-explorer-8 createelement

在此代码片段中,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/

相关文章:

javascript - getWindowHandle() Selenium Webdriver Javascript

javascript - Joi 验证 : multiple validation error messages for single field

javascript - 使用经度/纬度坐标显示位置 - Google map

javascript - Angular Js货币,后符号为欧元

html - IE 文档模式 8 或以下不兼容 .svg 图片类型

javascript - 如何在 IE8 中禁用 body.blur()?

javascript - “控制台”是 Internet Explorer 的未定义错误

javascript - :after with creating html elements through javascript

javascript - HTML 元素添加到 Javascript for 循环中,然后在计数器递增时删除

javascript - 表格、tr、td 标签上的 document.createElement IE8 失败