アプリから jQuery を削除するのに苦労しています。ng-click
主な問題:と組み合わせた単純なリンクui-sref
:
<a data-ui-sref="main2" data-ng-click="reportClick()">Link</a>
結果:ng-click
発火しますが、発火ui-sref
しません。これは、angular-touchを使用し、依存関係およびモバイル ブラウザーとしてjQueryを使用しない場合、または新しい chrome 32 でモバイル デバイスのエミュレーションを使用する場合にのみ発生します (エミュレーション ターゲットとして Nexus 4 を使用しました)。
実行例: http://jsfiddle.net/scheffield/AEfMm/
効果を確認するには:モバイル ブラウザでhttp://jsfiddle.net/scheffield/AEfMm/show
私はすでに少し調査を行っており、イベントオブジェクトが壊れていることがわかりました:
element.bind("click", function(e) {
var button = e.which || e.button;
if ((button === 0 || button == 1) && !e.ctrlKey && !e.metaKey && !e.shiftKey) {
// HACK: This is to allow ng-clicks to be processed before the transition is initiated:
$timeout(function() {
scope.$apply(function() {
$state.go(ref.state, params, { relative: base });
});
});
e.preventDefault();
}
});
として実装された 2 つの関数だけを含むオブジェクトangular.noop
です。
何か案は?