3

最新の jQuery へのアップグレードを行っていますが、更新が必要な js ファイルが多数あります。主に live() イベントの on() への変換 (数百あります)

崇高なテキストでは、検索と置換を正規表現で使用して、次のことを実現する方法を考えています。

検索 (正規表現を使用してクラス名を選択):

$('.class-name').live('click'

と置換する:

$('#content').on('click', '.class-name'

編集:私の試みはこのように見えますが、それが正しくないことはわかっています...

探す:

$('(.*?)').live('click'

と置換する

$('#content').on('click', '$1'

誰もこれを行う方法を知っていますか?

4

2 に答える 2

3

あなたは基本的にそれを持っていました。次のように、検索式で特殊文字をエスケープする必要がありました。

探す:\$\('(\..*?)'\)\.live\('click'

交換:$('#content').on('click', '$1'

.これをクラス ロケータにのみ適用することを想定して、クラス名キャプチャの先頭にリテラルを挿入しました。

私が確信していないことの 1 つは、クラス名の式に一致する文字を制限する必要があるかどうかです。.もしそうなら、文字を のような文字クラスに置き換える[\w-.]か、クラス名に含まれるものは何でもかまいません。

于 2013-07-26T03:33:37.733 に答える