私は実際に wysihtml5 エディターの結果を安全にしようとしています。
基本的に、ユーザーは script/forms/etc タグを入力できません。
一部のタグはコンテンツを希望どおりに表示するために使用されているため、すべてのタグを削除することはできません。
(例:<h1>
タイトルを表示する)
問題は、ユーザーがまだ不要なコードにバインドされた DOM イベント リスナーを追加できることです。
(例: <h1 onclick="alert('Houston, got a problem');"></h1>
)
div 内のすべてのイベント リスナーを削除したいと思います (その div 内のすべての子孫に対して)。
私が実際に使用しようとした解決策は、コードを文字列としてチェックして不要なコンテンツを見つけて置き換えることで、これは不要なタグに対して機能しました。
私が実際に必要としているのは、すべてのタグ内のすべてのイベント リスナーに一致する正規表現です。
「< と > の間のすべての [on*] を選択」のようなもの。
例 :
<h1 onclick=""></h1>
=> 一致する必要が
<h1 onnewevent=""></h1>
ある => 一致する必要がある => 一致する
<h1>onclick=""</h1>
必要がない
よろしくお願いします。