2011-03-06 66 views
0

我把這個編輯器叫做jWYSIWYG,它基本上是一個Jquery插件。 因此,當我選擇一些文本並點擊面板上的H1/H2/p或其他任何內容時,我的文本被封裝在那些對應的標籤簡單的Jquery所見即所得的編輯器問題

(例如<h1>My text</h1>)中。

我的簡單問題: 如何將特定的類附加到這些標記。我的意思是,每一個用戶點擊H1標籤按鈕的時候,我希望它生成類似

<h1 class="someclassname">H1</h1>

我知道這一定是簡單的,如果有人可以幫助,將是巨大的。

這裏的鏈接到我使用的項目: https://github.com/akzhan/jwysiwyg

謝謝。

回答

1

我知道這是一個古老的線程,但想到我會發布我的發現爲別人,我也一直在尋找類似的調整到jWYSIWYG。

您可以使用「exec」覆蓋控件的默認行爲。

h1: { 
    exec: function() { 
     var range = this.getInternalRange(), 
      common = $(range.commonAncestorContainer), 
      $nodeName = range.commonAncestorContainer.nodeName.toLowerCase(); 
     if (common.parent('h1').length) { 
      common.unwrap(); 
     } else { 
      if ($nodeName !== 'body') { 
       common.wrap('<h1 class="someclassname" />'); 
      } 
     } 
    } 
} 
+0

謝謝,非常感謝:) – dsignr

0

看文檔,它應該是這樣的:

$('#wysiwyg').wysiwyg({ 
    controls: { 
     h1: { className: 'your-class-name' }, 
     h2: { className: 'your-other-class-name' }, 
    } 
}); 
+0

不起作用,無論如何謝謝.. :) – dsignr