2010-04-02 3 views
0

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

Вот что у меня есть:

JavaScript: (функция() {
уаг Trackingnumber = "/ *tracking number* /";
вар а = document.forms.trackingForm;
если (»http://fedex.com/Tracking '== document.location) {
trackingForm.trackNbrs.value = Trackingnumber;
document.forms.trackingForm.submit();}

else {
window.open ('http://fedex.com/Tracking');
this.window.onload = функция() { // Это, как представляется, проблема
trackingForm.trackNbrs.value = Trackingnumber;
onload (document.forms.trackingForm.submit());
}
}
})();

Любые идеи?

+0

Возможно, этот пользовательский указатель - это то, что вы хотите http://userscripts.org/scripts/show/839 – jerone

ответ

0

window.open открывает новое окно, поэтому , если будет работать вообще (у меня мало опыта с букмарклетами), вам нужно будет обратиться к новому окну напрямую. Что-то вроде этого:

else { 
new_window = window.open('http://fedex.com/Tracking'); 
new_window.onload = function(){ 
new_window.document.trackingForm.trackNbrs.value = trackingNumber; 
new_window.document.forms.trackingForm.submit(); 
// I didn't get at all what the onload() was for, re-add if necessary 
} 
Смежные вопросы