gpt4 book ai didi

mootools - mootools 中的 .innerHTML 和 .set ('html' ,'' 之间有什么区别吗?

转载 作者:行者123 更新时间:2023-12-01 02:38:39 27 4
gpt4 key购买 nike

要在我的网站上设置元素的 html,我主要使用

$('elementId').innerHTML = "<p>text</p>";

浏览 mootools 文档,我发现给出了这个例子:
$('myElement').set('html', '<div></div><p></p>');

这些有什么区别吗?我应该通过并更改 .innerHTML到 mootools 方法,还是没有区别?

最佳答案

第一个有效的原因是 - 就目前而言 - mootools 中的 $ 选择器(document.id)返回实际元素。这 - 在普通浏览器中 - 与 document.getElementById() 相同,并且元素对象公开其所有属性/属性供您编辑。

不使用 .set 的问题是:

  • 当 mootools 2.0 又名 MILK 发布时,它将无法工作,因为它将像 jQuery 一样被包装并且选择器不会返回对象(mootools 正在成为 AMD,因此它不会修改 native 类型 - 元素、数组、数字、字符串,功能(也许!) - 原型(prototype))。
  • 你不能把它锁起来。设置您可以:$('someid').set("html", "loading...").highlight(); , 例如。
  • set 是重载的——它可以通过传递一个对象来设置单个属性或多个属性。例如,element.set({html: "hello", href: "#", events: boundObj});
  • https://github.com/mootools/mootools-core/blob/master/Source/Element/Element.js#L936-942 - 你可以传递一个数组作为参数,它会为你加入它,这使得使用多行字符串变得容易,并确保在 IE
  • 中的性能

    编辑:BBT 粉丝打开了一个单独的话题: 框架是否应该尝试阻止/阻止您做破坏浏览器的事情?
  • 如果您愿意,您可以通过更改该 setter Element.Properties.html.set = function() { var tag = this.get("tag"); ... check tag }; 添加不允许的元素- mootools 不是很棒吗?

  • mootools - 默认情况下 - 不会阻止您执行 愚蠢的狗屎[tm] - 这是你的责任:) 例如,尝试在 IE 中将元素的高度设置为负值。 Fx 类(class)应该阻止您这样做吗?不,二传手应该阻止你吗?不。不断检查以查看您是否没有破坏的足迹意味着它会在动画等性能关键的情况下减慢一切。

    关于mootools - mootools 中的 .innerHTML 和 .set ('html' ,'' 之间有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9115104/

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