Мне нужно вызвать операцию щелчка в собственном javascript. Я получил следующий элемент:Исходный javascript нажмите на элемент dom
<svg class="pull-right svg-cross ng-isolate-scope" xmlns="http://www.w3.org/2000/svg" data-svg-icon="" icon="cross" ng-click="dismissBanner()">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#svg-cross"></use>
</svg>
Я, кажется, сайт, который использует угловые. Я бы хотел щелкнуть по элементу таким образом, чтобы функция dismissBanner()
получила правильное название. Поэтому я попытался следующие:
document.getElementsByClassName('pull-right svg-cross ng-isolate-scope')[0].click();
и
document.getElementsByClassName('pull-right svg-cross ng-isolate-scope')[0].onclick();
Однако обе попытки не увенчались успехом. Я получаю ошибку Uncaught TypeError: document.getElementsByClassName(...)[0].onclick is not a function(…)
.
Я также называется функцией dismissBanner();
непосредственно, однако, я получаю ошибку: Uncaught ReferenceError: dismissBanner is not defined(…)
Как я должен сделать это правильно?
Хм, я получаю следующее сообщение об ошибке, при вызове эта: 'неперехваченной Ошибки: [jqLite: nosel] HTTP://errors.angularjs.org/1.3.17/jqLite/nosel (...) ' – toom
@toom Я просто обновил ответ, включив только одно имя класса, а также изменив' triggerHandler' на 'trigger'. Не могли бы вы попробовать еще раз? –
Я попробовал ваше новое предложение. К сожалению, это вызывает ошибку. – toom