0

$(selector).trigger('click')その要素で ng-click イベントをトリガーするために使用したいと思います。

これを行うためにディレクティブを使用したいと思いますが、その方法がわかりません。これが私が考えていたことのようなものです:

.directive('jClick', function() {
    return {
        restrict : 'A',
        scope: {
            'ngClick' : '&'
        },
        link: function($scope, element) {
            return element.bind('click', function(){
                $scope.ngClick({order : $scope.order});
            });
        }
    };
})

機能しないだけでなく、アプリが完全に壊れます。シナリオ(役立つ場合)は次のとおりです。

my の関数が呼び出されたときに展開される展開可能な項目のリストがありますng-click( ng-click="expand(order)")。

現在の URL の末尾に次のようなハッシュがあるかどうかを確認する関数があります。

example.com#/my/route/params#83947

(2 番目のハッシュは$routeParams目的が異なるため、別のハッシュにしています。)

関数を使用して、その 2 番目のハッシュが存在するかどうかを確認し、ページを下にスクロールして、対応するリスト アイテムを表示します。それはすべて正常に機能しますが、そのリスト項目も展開したいので、それをトリガーしたいのですng-click

4

1 に答える 1

2

特定の条件に基づいてジッピーを自動的に開きたいですか?状態自体は重要ではありません。できることは、可視性 (展開/折りたたみ) をブール値に結び付け、コントローラーに変数を設定することです。Zippy ディレクティブでは、ng-click も同じ変数を設定します。1 つは Zippy をクリックする方法で、もう 1 つは外部からフラグを設定する方法です。

ng-click は、組み込みのディレクティブであり、それ自体の属性や呼び出すことができる関数ではありません。手動で ng-click をトリガーすることに頼りません。

于 2013-03-27T18:05:04.057 に答える