前提・実現したいこと
replaceと配列を使って、翻訳機のようなものを作りたいと考えています。
置換後の語句にカーソルを載せると、翻訳前の語句が表示されるようなプログラミングを作りたいです。
発生している問題・エラーメッセージ
replaceで置き換えた文字にmouseover要素を加えたい。 置換後の語句にHTML要素(mouseoverを加えたり、文字にリンクを貼ったり)を持たせる方法に詰まってしまいました。 または、replaceを使って、同じ動きをするプログラミング方法があれば教えていただきたいです。
該当のソースコード
HTML
1 2<body> 3 4<textarea id="input"></textarea> 5<button onclick="update_field();">出力ボタン</button> 6<p name="text" id="output" rows="20" cols="70" >ここに出力されます</p> 7 8</body> 9
javascript
1 2unction update_field() { 3 text = document.getElementById("input").value; 4document.getElementById("output").innerHTML = text; 5 6$(function(){ 7 var arr1 = [ 8 9 /りんご/g, 10 /ドライバー/g, 11 12 ]; 13 14 var arr2 = [ 15 "果物", 16 "工具", 17 18 ]; 19 20 $('#output').each(function(){ 21 for(var i=0, len=arr1.length; i<len; i++){ 22 var txt = $(this).html(); 23 $(this).html( 24 txt.replace(arr1[i], 25 '<span class="kaisei">' + arr2[i] + '</span>') 26 27 ); 28 } 29 }); 30}); 31} 32
CSS
1.kaisei { 2 color: #e60012; 3 text-decoration:underline; 4} 5
プログラミング初心者で、至らない点が多く申し訳ありません。
ご回答のほどよろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー