2016-04-11 3 views
0

e_pubリーダーiosアプリで作業しています。選択したテキストを強調表示するには、選択したテキストをスパンタグで囲んでJavaScriptを呼び出しています。私の問題は、選択がパラグラフ内で起こることです。ハイライトは、中間の<p>タグのために段落を越えて作成された場合には動作しません。選択した範囲にHTMLタグがあるかどうかを確認するにはどうすればよいですか?Javascript - 選択した範囲が段落を超えていないかどうかを確認する方法は?

+0

コンテンツ内でhtmlタグを検索するには、正規表現を使用する必要があります。 –

+0

しかし、範囲を渡すときには、テキストのみが保持されます。正規表現検証は失敗します。 function validhighlight(高値) { アラート(高値); var regex = /(<([^>)+)>)/ ig; return regex.test(highvalue); } –

+0

tanq @ Wellwisher。最後に "\ n"の正規表現マッチで修正されました。選択したコンテンツは、上記のようにhtmlタグ –

答えて

0

検索する代わりに、コンテンツ内のすべてのHTMLタグを削除できます。単にあなたがすべてのタグを削除することができ、ハイライトを適用し、その後スパンであなたのコンテンツをラップjqueryの

var content = "<div>This Text contains <p> Some P tags</p> and <span> span tag </span></div>"; 
console.log($(content).text()); 

を使用します。

+0

の「\ n」を受信しただけで、そのepubリーダーです。だから、単にドラッグドロップし、ハイライトをクリックします。段落を超えて選択が行われた場合、スパンdoesnt作品..これまで私はHTMLタグタグを受信didntを観察... –

関連する問題