gpt4 book ai didi

jquery - 为什么以下创建 DOM 元素的方法不能在 IE7 和 IE8 中使用 jQuery?

转载 作者:行者123 更新时间:2023-12-01 00:49:29 25 4
gpt4 key购买 nike

有时,将 DOM 元素创建为 jQuery 对象以用作选择器和上下文是很有用的。

以下内容适用于 IE7、IE8 和所有其他使用 jQuery 1.6.2/3 的浏览器 - 但请注意,document.createElement 用于实现此目的。在 IE7 和 IE8 中。

   jQuery('body').append('<div id="basic-render-test"> </div>');

var new_object = {};
new_object.wrapper = '<span id="adfasdfasdfwersadfas3rs">';
//alert(typeof new_object.wrapper);

if (jQuery.browser.msie && jQuery.browser.version <= 8.0){
new_object.el = document.createElement(new_object.wrapper);
} else {
new_object.el = jQuery(new_object.wrapper);
}

new_object.render_into = "#basic-render-test";
jQuery(new_object.render_into).append( new_object.el );
some_html = '<DIV id="type-m" class="translate"> HELLO IE</DIV>';
jQuery(new_object.el).html( some_html );

声明的 DOM 类型是 HTML 5

<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

最佳答案

您需要提供实际有效的 html 代码才能正确创建。在您的示例中,您的 span 标记未关闭,这会导致 IE 中的评估代码无效,而其他浏览器往往会自动修复它。

替换

new_object.wrapper = '<span id="adfasdfasdfwersadfas3rs">';

new_object.wrapper = '<span id="adfasdfasdfwersadfas3rs"></span>';

This exemple在 IE 7 和 8 上完美运行

关于jquery - 为什么以下创建 DOM 元素的方法不能在 IE7 和 IE8 中使用 jQuery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7358920/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com