2012-02-29 106 views
1

我使用Pagedown,它需要將id爲wmd-input的textarea。這是寫在Markdown.Editor.js如下:Pagedown使用類屬性而不是id

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屬性會很好。如何實現這一目標?

+0

我有完全相同的問題,你有沒有想過這個? – leen3o 2012-09-12 08:24:17

回答

2

我有我想象的是與你類似的情況,雖然我沒有特別依賴於我的ID,所以我不介意將它們與JS交換出來,我沒有適用於ID的樣式(我有類)。

我剛剛爲自己的使用寫的東西可能會有一些用處,簡而言之,它使用jQuery通過插入正確的DOM結構並應用正確的方式使用wmd編輯器替換在頁面上找到的所有textareas ID(替換任何現有的textarea 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(); 
}); 
相關問題