2013-03-21 2 views
0

Я хочу иметь возможность динамически загружать библиотеки .js, такие как jquery, используя Watir для некоторой расширенной автоматизации браузера. Это то, что я пробовал:Загрузка js-файлов в Watir

$browser.execute_script(%{var bootscript = document.createElement("script"); 
     bootscript.setAttribute("type", "text/javascript"); 
     bootscript.setAttribute("src", "//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"); 
     document.getElementsByTagName("head")[0].appendChild(bootscript); 
    alert('I loaded jquery!');}); 

Update больше не сбой после того, как опечатка была исправлена. Все еще возникают ошибки при использовании jquery-функций.

ответ

1

Исключение возникает из-за ошибки при выполнении javascript. Если вы проверяете страницу, вы увидите яваскрипт ошибку, как:

Message: 'script' is undefined 
Line: 1 
Char: 1 
Code: 0 

Если добавить строку скрипта по линии, вы увидите, что ошибка происходит на линии:

document.getElementsByTagName("head")[0].appendChild(script); 

проблема в том, что в вашей переменной есть опечатка. Вы используете script вместо своих bootscript. Выполнение следующих действий больше не будет выбрасывать исключение:

document.getElementsByTagName("head")[0].appendChild(bootscript); 
+0

Спасибо, что заметили опечатку. Все еще есть некоторые проблемы с использованием функций jquery после его загрузки. Я уточню, как только выясню, что не так. Необходимо протестировать на новой странице. –

Смежные вопросы