在TodoMVC中,元素上的data-framework =“backbonejs”是什么?

时间:2014-03-29 21:53:33

标签: backbone.js todomvc

我在TodoMVC示例的index.html中找到了以下代码行:

<html lang="en" data-framework="backbonejs">

是否有人知道这个数据元素用于?

1 个答案:

答案 0 :(得分:5)

它与TodoMVC的依赖关系无关。此属性的唯一目的是允许附加侧面板附加指向特定版本的TodoMVC示例的特定框架的文档的链接。这就是it's done

的方式
if (!framework && document.querySelector('[data-framework]')) {
  framework = document.querySelector('[data-framework]')
      .getAttribute('data-framework');
}
// ...
if (template && learnJSON[framework]) {
  this.frameworkJSON = learnJSON[framework];
  this.template = template;

  this.append();
}       

Learn.prototype.append = function () {
  var aside = document.createElement('aside');
  aside.innerHTML = _.template(this.template, this.frameworkJSON);
  aside.className = 'learn';

  // Localize demo links
  var demoLinks = aside.querySelectorAll('.demo-link');
  Array.prototype.forEach.call(demoLinks, function (demoLink) {
    demoLink.setAttribute('href', findRoot() + demoLink.getAttribute('href'));
  });

  document.body.className = (document.body.className + ' learn-bar').trim();
  document.body.insertAdjacentHTML('afterBegin', aside.outerHTML);
};