【问题标题】:Mootools equivalent of jQuery's beforeMootools 相当于之前的 jQuery
【发布时间】:2012-09-25 12:56:02
【问题描述】:

mootools 是否有相当于 jQuery 的 before? 或者如果没有,我如何在 mootools 中实现类似的功能?

例如,我从 ajax 得到结果,我想在某个元素之前插入结果的 HTML 代码。

<div class="elements">
  <div class="element"></div>
  <div class="element"></div>
  <div class="element"></div>

  </div class="loader"></div>
</div>

我想在.loader 之前插入一些HTML 代码(字符串)。 在这个问题中,我不能使用 JSON 或类似 HTML 的对象。

我有将 HTML 插入 div 的功能:

function appendHTML(elem, html){
    if ($type(html) != 'string') return false;
    var temp = new Element('div');
    temp.set('html', html);
    elem.adopt(temp.childNodes);
    return this;
}

但我想在 div 之前插入 HTML 代码,而不是插入。 谢谢!

【问题讨论】:

  • 我的意思是 HTML 代码字符串,而不是对象!
  • 使用元素对象更容易,而不是传递字符串。如果您通过 ajax 从服务器端传递 html,则可以通过仅传递您需要的数据(并使用 Request.JSON)来节省一些时间,并按照我在下面的回答呈现元素。
  • 我只从服务器获取 HTML。我不想进入 JSON 因为我想插入每种类型的块。

标签: jquery mootools


【解决方案1】:

当您inject 将您的元素放入 DOM 时,您可以传入第二个参数,说明该元素应该去哪里。默认为bottom

new Element('div', {
    "class": 'className',
    html: 'Some html'
}).inject(existingEl, 'before');

【讨论】:

    【解决方案2】:

    inject()方法:

    myElement.inject(el[, where]);
    

    这是在mySecondElement之前插入myFirstElement的示例:

    myFirstElement.inject(mySecondElement, 'before');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-02
      • 1970-01-01
      • 2013-01-05
      • 1970-01-01
      • 1970-01-01
      • 2013-07-26
      • 1970-01-01
      • 2020-08-17
      相关资源
      最近更新 更多