我用 向下翻页 这需要给出 id wmd-input 到文本区域。中写成如下 Markdown.Editor.js:

function PanelCollection(postfix) {
    this.buttonBar = doc.getElementById("wmd-button-bar" + postfix);
    this.preview = doc.getElementById("wmd-preview" + postfix);
    this.input = doc.getElementById("wmd-input" + postfix);
};

但是,我需要在项目的各个位置使用具有不同文本区域 ID 的编辑器。因此,最好使用 class 而不是 id 属性。如何才能实现这一点呢?

有帮助吗?

解决方案

我的情况与你类似,尽管我对我的 ID 没有特定的依赖,所以我不介意用 JS 交换它们,我没有对 ID 应用样式(我有类那)。

我刚刚写的供我自己使用的内容可能会有一些用处,简而言之,它使用 jQuery 通过插入正确的 DOM 结构并应用正确的 ID(替换任何现有文本区域 ID)并考虑迭代。

$('textarea').each(function(i) {
  var panel = $('<div/>', {'class': 'wmd-panel'});

  panel.append(
    $('<div/>', {'id': 'wmd-button-bar-' + i, 'class': 'wmd-button-bar'}),
    $(this).clone().attr('id', 'wmd-input-' + i)
  );

  $(this).replaceWith(panel);

  panel.after($('<div/>', {'id': 'wmd-preview-' + i, 'class': 'wmd-preview'}));

  var converter = Markdown.getSanitizingConverter();
  var editor = new Markdown.Editor(converter, '-' + i);
  editor.run();
});
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top