Имитация клика по тегу привязки с помощью JavaScript - PullRequest
4 голосов
/ 01 сентября 2010

Я пытаюсь изменить текст в адресной строке браузера, имитируя нажатие на тег привязки через javascript.Этот код прекрасно работает в IE, но не в FireFox или Chrome.

<script type="text/javascript">
    function UpdateQueryString() {
        var controlRef = document.createElement('a');
        controlRef.id = "t1";
        controlRef.href = '#1';
        controlRef.innerHTML = '';
        document.body.appendChild(controlRef);

        try {

        controlRef.click();
            }
        catch (err) {
            txt = "There was an error on this page.\n\n";
            txt += "Error description: " + err.description + "\n\n";
            txt += "Click OK to continue.\n\n";
            alert(txt);
        }
        return false;
    }
</script>

В браузерах, отличных от IE, я могу найти тег привязки, но вызов щелчка приводит к ошибке.

Спасибо

1 Ответ

5 голосов
/ 01 сентября 2010

Вы ищете location свойство :

location = '#1';

или

location.hash = '#1';
...