как применить click () к тегу, используя JavaScript - PullRequest
4 голосов
/ 20 октября 2011

Я пытаюсь эмулировать щелчок по базовой ссылке, которая выглядит следующим образом, без идентификатора или класса.

<a href="http://www.myebsite.com/service/playnow">Click to Start</a>

У меня есть следующий код, но когда я загружаю страницу, щелчок не выполняется, действие не выполняется,Что я делаю не так?

    var a = document.evaluate( '//a[contains(@href, "playnow")]' ,document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null );
    if(a){
        a.click();
    }

Ответы [ 2 ]

4 голосов
/ 20 октября 2011

Почему у вашего тега нет идентификатора, странно, но я предполагаю, что по какой-то причине вы не можете это контролировать. Я не думаю, что вы можете эмулировать клик с помощью метода «клик», поэтому, возможно, попробуйте что-то вроде:

var a = document.evaluate( '//a[contains(@href, "playnow")]' ,document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null );
if(a){
   window.location.href = a.href;
}
1 голос
/ 20 октября 2011

Самый простой способ - добавить идентификатор в тег привязки, а затем вызвать функцию click для элемента DOM

HTML:

<a id="theAnchor" href="http://www.myebsite.com/service/playnow">Click to Start</a>

JavaScript:

document.getElementById('theAnchor').click();
...