こちらのページがMedium.jsの本家です。ここのサンプルページについての質問です。
http://jakiestfu.github.io/Medium.js/docs/
このページの中で、Rich with Invoke Elementを採用したいと考えました。
そして私の作っているWebページに適用させようとしたところ、問題が発生しました。
私のWebページでは、この入力フォームが1ページあたり複数あるのです。
つまり、<div id="rich_with_invoke_element">がページ内に1個であれば、問題なくできるのですが、複数あると動作しなくなるようです。
調べたところ、このタグの動作に関与していると考えられる該当ファイルが見つかり、2行目のところに
document.getElementById('rich_with_invoke_element')
と書いてありました(下のコード参照、ファイル一部ではなく全体です)。
該当ファイルは、検証によって、「rich_with_invoke_element.js」ファイルであることがわかりました。
javascript
1(function() { 2 var article = document.getElementById('rich_with_invoke_element'), container = article.parentNode, medium = new Medium({ 3 element : article, 4 mode : Medium.richMode, 5 placeholder : 'Your Article', 6 attributes : null, 7 tags : null, 8 pasteAsText : false 9 }); 10 11 article.highlight = function() { 12 if (document.activeElement !== article) { 13 medium.select(); 14 } 15 }; 16 17 container.querySelector('.bold').onmousedown = function() { 18 article.highlight(); 19 medium.invokeElement('b', { 20 title : "I'm bold!", 21 style : "color: #66d9ef" 22 }); 23 return false; 24 }; 25 26 container.querySelector('.underline').onmousedown = function() { 27 article.highlight(); 28 medium.invokeElement('u', { 29 title : "I'm underlined!", 30 style : "color: #a6e22e" 31 }); 32 return false; 33 }; 34 35 container.querySelector('.italic').onmousedown = function() { 36 article.highlight(); 37 medium.invokeElement('i', { 38 title : "I'm italics!", 39 style : "color: #f92672" 40 }); 41 return false; 42 }; 43 44 container.querySelector('.strike').onmousedown = function() { 45 article.highlight(); 46 medium.invokeElement('strike', { 47 title : "I've been struck!", 48 style : "color: #e6db74" 49 }); 50 return false; 51 }; 52})();
例えばですが、idを複数作り、
javascript
1#rich_with_invoke_element_001 2#rich_with_invoke_element_002 3#rich_with_invoke_element_003
のようにして複数の入力フォーム(実際にはinputではなくdivタグ)を作り、jqueryでいう
javascript
1$('[id^="rich_with_invoke_element"]')
のように書き換えることはできないのでしょうか?
ご教示いただけますと幸いです。よろしくおねがいします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/19 01:07