0

ネストされたリストでulをクリックして画像を交換する次の機能がありますが、リストのバブルアップを停止しません..

function bimageswap (step) {
    step.stopPropagation;
    realstep = parseInt(step) + 1;
    nextsteps = realstep + 1;
    for (iss = nextsteps;iss <= 5; iss++) {
        document.getElementById("step" + iss).className = 'step' + iss;
        alert(iss);
    }
    document.getElementById("step" + realstep).className = 'step' + realstep + 'a';
/*$("#step2").css( 'background-image', 'images/adtl_prodimg/discs/step1_.png');*/
    return false;
}

次のように呼び出されます。

<ul onclick='return bimageswap("4")'>

別の回答で見つけたものであるため、返品を試みましたが、それでも機能しません。助けていただければ幸いです。

4

1 に答える 1

1

stopPropagationメソッドはオブジェクト内にeventあり、文字列で呼び出すことはできません。括弧も欠落しているためstopPropagation、文字列からプロパティを取得して ( を返しますundefined)、それを破棄します。

イベント ハンドラーから関数にイベント オブジェクトを送信します。

<ul onclick="bimageswap(event, '4');">

関数でイベント オブジェクトを使用します。

function bimageswap(event, step) {
  event.stopPropagation();
  ...
于 2011-08-05T06:30:21.560 に答える