2014-02-10 2 views
0

Быстрый вопрос о том, чтобы перейти на новую страницу и сделать что-нибудь.Ведение дел на новой странице

// doesn't work 
function doThings() { 
    document.location.assign("http://foo.com"); 
    things.doIt(); 
} 

foo.com имеет things.doIt() функцию, которую я хочу, чтобы вызвать после перехода на эту страницу, но это, кажется, я не могу сделать это. Есть простой способ сделать это?

И побочный вопрос, я вижу, что все используют document.location = url, хотя location - это объект; он работает нормально, но почему все его используют? Это быстрее?

Редактировать: Я ничего не могу редактировать что-либо на foo.com.

+0

Быстрее t о писать? – Cyclonecode

+0

есть буквально никакой разницы? Он просто чувствует странное назначение строки объекту. – Peter

+0

Нет, я не думаю, что это действительно какой-то различие. https://developer.mozilla.org/en-US/docs/Web/API/Window.location – Cyclonecode

ответ

0

Что вы можете сделать, это передать «референт» или ключ действия в строке запроса URL-адреса, чтобы foo.com мог определить, было ли оно получено с определенной страницы или что-то особенное. Примечание: кто-то может просто вручную добавить его в URL-адрес, хотя.

http://foo.com?referer=bar.com

или

http://foo.com?action=doIt

В любом случае, что бы вы хотели, чтобы иметь обработчик window.onload событий на foo.com, а внутри него есть функция для запуска OnLoad и проверки если в строке запроса есть ключ, который соответствует тому, который будет установлен из референта, и если это так, запустите things.doIt()

window.onload = function(){ 
    //check the value of location.search for your query string 
    //execute special code if so 
} 
+0

Есть ли способ сделать это, не редактируя его на стороне сервера? У меня есть несколько небольших страниц с функциями, и я хочу сделать расширение, где я могу нажать горячую клавишу на моей клавиатуре с любой страницы, а затем она приведет меня к моей странице и вызовет функцию. Некоторые из моих страниц делают вещи с буфером обмена и другими с URL-адресом со страницы, с которой я пришел, поэтому я не могу быть уверен в URL-адресе, из которого я пришел. – Peter

+0

@Peter Я не уверен, что вы имеете в виду, откуда взялась серверная сторона? Или у вас нет доступа к каким-либо статическим файлам (html, js) – thescientist

+0

Я имею в виду, есть ли способ сделать это без редактирования кода на моем сервере (код на foo.com)? Думаю, я думаю, что сервер/клиент, потому что я делаю автономный скрипт для этого. Мне нравится идея передать что-то в url (и похоже, что это определенно работает), но я просто не имею доступа к aws, над которым я работаю до следующей недели, и я надеялся проверить это неделю. Есть ли в любом случае для javascript для изменения местоположения, ожидания, а затем вызова функции на этой странице? – Peter

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