0

ここに jsfiddleのコードがあります。

私たちはjquery 1.4.4を使用していますが、コードを動作させることができる新しいバージョンにまだ更新できません。

したがって、domready または pageload で attr を多数の<aタグに追加する必要があります。javascriptや必要なバージョンのjqueryでこれが可能な方法を誰かが見つけ出すのを手伝ってくれませんか。

ありがとうございました。

4

1 に答える 1

1

以下のように.attr(index, callback)プロセスを使用して簡単に実行できます。

$('a').attr('href', function(index, oldAttr) {
    if (oldAttr.indexOf('test') >= 0) {
        $(this)
            .removeAttr('onclick')
            .get(0)
            .setAttribute("onclick", "test");
    }
});​

デモ

ただし、使用する場合は.each()、次のように試してください。

$('a').each(function(index, element) {
    var el = $(element),
        hasHref = !el.attr('href'); // return true, if no href
    if( !hasHref ) {
        var href = el.attr('href'); 
        if( href.match('test').length || href.match('test-page').length ) {
         el
           .removeAttr("onclick")
           .get(0)
           .setAttribute("onclick", "test");
        }
    }
});​

デモ

于 2012-09-18T15:59:33.133 に答える