1

単純な古い HTML リンクからイベント (カード ビューを切り替えたい) を起動するにはどうすればよいですか?

コントロール セクションで ID でリンクを参照すると、試したイベント (クリック、タップ) がトリガーされないようです。

ありがとう!

4

3 に答える 3

2

リンクをレンダリングしたら、次の方法でイベント リスナーを追加できます。

Ext.get('[link id here]').on('click', function(){...}, this);

アップデート

ユーザーがハイパーリンクをクリックしたときにイベントを発生させたい場合は、単に追加できますが、この関数this.fireEvent('[name of event here]');のキーワードの意味を認識しthisているため、リスナーを適切に追加することができます...それは理にかなっていますか?

于 2011-10-31T20:12:20.767 に答える
1

リンクを含むパネルにクリック リスナーを追加します。この例では、タグに「リンク」クラスがあります。jQuery で行われているように、独自のクラス/ID で置き換えることができます。

listeners: {
    scope: this,
    itemtap: this.onItemtapAction,
    click: {
       element: 'el',
       fn: function (e) {
          if (e.getTarget('a.link')) {
              // Switch cards here
          }
    }
}
于 2011-11-02T22:31:15.580 に答える
0

簡単な Java Script を使用して、リスナーをリンクに追加しました。

まず、コンテナ コンポーネントの「アクティブ化」リスナーを作成しました。

 ...
 listeners: {
        activate: function (newActiveItem, container, oldActiveItem, eOpts) {
            this.onActivate(newActiveItem, container, oldActiveItem, eOpts);
        }
    }
...

そして、ここに私の機能があります:

onActivate: function (newActiveItem, mainNavView, oldActiveItem, eOpts) {
        var me = this;

        document.getElementById('logOutLink').addEventListener("click",
           function(){
               me.onLogOut();
           }, false);
       },
onLogOut:function(){
        alert('log out');
    }
于 2016-07-03T05:58:01.053 に答える