2015-04-04 38 views
0

我正在創建一個對話框,讓缺乏經驗的編輯者能夠正確地將塊引號插入到tinymce編輯器中。 我希望他們能夠點擊塊引用並在對話框中再次打開以進行編輯。 但是,如何將點擊事件綁定到編輯器中的標籤?這裏的排序,如果我已經試過的東西(elm1是文本編輯器,我使用的警覺POC)如何將點擊事件綁定到tinymce編輯器內的html標籤?

 $('#elm1 blockquote').click(function() { 
      var mh = $(this).html(); 
      alert(mh); 
     }) 
+2

所以,根本的工作/不工作?問題是什麼? – lshettyl 2015-04-04 13:30:55

+0

我發現,雖然tinymce實例聲明爲elm1,但編輯器和內容實際上都在iframe中。所以問題是我如何綁定到這個元素? http://screencast.com/t/vjTFjzj4 – user2427285 2015-04-04 15:04:58

回答

0

您也可以嘗試與$.on方法(DOC here)註冊點擊事件。

$("#elm1 blockquote").on("click", function(e, el) { 
    alert(el.html()); 
}); 

而且,由於你的問題的範圍不包括何時何地增加你的點擊處理程序,你可能希望確保該事件已綁定到你的選擇($('#elm1 blockquote')可用時,如用$(document).ready()包裝它。

UPDATE(基於I幀):

jQuery中,它可能看起來更像:

var blockquote $("#elm1_ifr").contents().find("blockquote"); 
// OR: var blockquote $("#elm1_ifr").contents().find("#tinymce"); 
$(blockquote).on('click', function(e, el) { // Logic here... }); 
+0

感謝您的建議。我試過了,但沒有奏效。在進一步調查中,我可以看到elm1實際上是空的 http://screencast.com/t/B15ynRGX 編輯器的內容實際上是在用javascript創建的iframe中。那麼,我將如何綁定到這個元素?... http://screencast.com/t/vjTFjzj4 http://screencast.com/t/xTQI1eekQjml – user2427285 2015-04-04 15:03:27

+0

嗯。由於它位於Iframe中,因此可能需要在JQuery選擇器中更具體。 [This](http://stackoverflow.com/a/1088569/1058612)發佈了一些關於獲取iframe內容的很好的見解。 – JohnnyCoder 2015-04-04 15:32:35

+0

即使選擇了iframe,我也遇到了麻煩。我已經嘗試var iframe = $('iframe#elm1_ifr'); 但是代碼無法運行,當我提醒內容時,對象會以未定義的形式出現。 src屬性中沒有值的問題是否存在? src =「javascript:」「」 – user2427285 2015-04-04 18:38:01

相關問題