0

私は JS の知識がかなり限られていますが、外部 js ファイルの if ステートメントにつながるアクションがページにありました。私はクロームで動作するが、ffやオペラでは動作しない(event.toElement)を使用しています。

インラインjs

    $("div#jquery-live-search .dialog-iframe-card").dialog2IFrame(  { 
            height:900,
              closeOnOverlayClick: true, 
              closeOnEscape: true, 
              removeOnClose: true, 
              showCloseHandle: true,
}); 

    $("div#jquery-live-search .dialog-iframe-report").dialog2IFrame(    { 
                height:900,
                  closeOnOverlayClick: true, 
                  closeOnEscape: true, 
                  removeOnClose: true, 
                  showCloseHandle: true,
    }); 
    }); 

外部js

var parentHtml = "";
            if ($(event.toElement).hasClass("dialog-iframe-card")) {
            parentHtml = $(__DIALOG_HTML_CARD);
            } else if ($(event.toElement).hasClass("dialog-iframe-report")) {
            parentHtml = $(__DIALOG_HTML_REPORT);
            }

parentHTML には js ファイルの先頭に変数があり、if ステートメントが切り替えを行ったときに読み込まれます。クロム以外のブラウザで作業しているときに、正しいアクションを外部ファイルに渡す方法がわかりません。

また、クロムでのみ機能する次のことも試しました...

var $target = $(event.target);
                if ($target.hasClass("dialog-iframe-card")) {
                parentHtml = $(__DIALOG_HTML_CARD);
                } else if ($target.hasClass("dialog-iframe-report")) {
                parentHtml = $(__DIALOG_HTML_REPORT);
                }

提案された回答は、質問に答えたり解決したりしません。

4

1 に答える 1

0

イベントをトリガーした要素を把握するには、event.target を使用する必要があります。これを見てください http://api.jquery.com/event.target/

于 2013-08-04T07:20:24.247 に答える