Прехвърляне към съдържание


Снимка

JS функция в URL


  • Please log in to reply
4 replies to this topic

#1 AxllRose

AxllRose

    Мистър Флаш

  • Модератори
  • ПипПипПип
  • 524 Мнения:
  • Точки:50
  • Новини:0
  • Уроци:23

Публикувано: 29 June 2011, 22:07

Привет. Рядко се случва да го казвам, но... "Help" :)

Та хавата е следната. Имам чисто и просто някаква страничка index.php да я наречем. И в тази страничка има джава скрипт кодове.

Когато съм на index.php и заменя целият URL бар с "javascript:функцията" се получава това, което искам.

Но въпроса ми е следният. Може ли да се комбинират тези 2 действия, за да може да се отваря с external линк.

Пример:

Http://web.com/index.php?javascript:функцията

Нещо тази ? ми убягва. С нея пробвах вече - не става.

Какъв е синтаксиса, след .php за да може със зареждането да извика функция?

Ако някой се сеща - нека помага, дори и линк ще ми свърши работа.

Мерси.

#2 magadanski_uchen

magadanski_uchen

    Потребител

  • Потребители
  • Пип
  • 108 Мнения:
  • Точки:3
  • Новини:0
  • Уроци:0

Публикувано: 29 June 2011, 22:42

Просто трябва да се вържеш или към DOM ready JS event-а или към Window Load, така че страницата като се отвори и да се изпълни функцията.
Ако не знаеш точно каква е разликата между двата event-а - DOM ready се изпълнява веднага след като HTML-а на страницата е получен и парсиран от браузъра, доколкото Window Load се изпълнява чак след като вече са заредени и всички допълнителни JS, CSS файлове, картинки и всичко, което изобщо има да се зарежда като файлове в дадената страница (ако има по-големи картинки Window Load може да се изпълни доста късно, което в много случаи води до неудобства).
Ако използваш някакъв JS framework - потърси дали няма някакъв лесен начин да нагласиш функция към някой от event-ите. За jQuery примерно DOM ready се хваща по следния начин:
$(document).ready(function() {
  // код, който искаш да изпълниш
});

Доколкото ако Window Load ти върши работа - там абонирането става много лесно и без framework:
window.load = function() {
  // код, който искаш да изпълниш
};


#3 Battleman

Battleman

    Ветеран

  • Потребители
  • ПипПипПипПип
  • 912 Мнения:
  • Точки:3
  • Новини:0
  • Уроци:0

Публикувано: 30 June 2011, 10:18

Страничен въпрос - използването на JS фукнции в URL няма ли да увеличи шанса за успех на XSS атаките?

Публикувано изображение


#4 AxllRose

AxllRose

    Мистър Флаш

  • Модератори
  • ПипПипПип
  • 524 Мнения:
  • Точки:50
  • Новини:0
  • Уроци:23

Публикувано: 01 July 2011, 18:03

Прав си за страничният въпрос - ще го направи.

Мерси за отговора - ще ми свърши работа ;)

#5 MarT0oo

MarT0oo

    Потребител

  • Преводачи
  • Пип
  • 224 Мнения:
  • Точки:16
  • Новини:0
  • Уроци:0

Публикувано: 01 July 2011, 19:56

Аз имам подобен въпрос. Наскоро ми се наложи да използвам една функция, която да се стартира при зареждане на страницата. Използвах window.load = function(), обаче не ми върши точно работа. Искам при зареждане на страницата функцията да ме изпраща на <div>, който е по-надолу в index-a. Проблема ми е, че в момента първо се зарежда цялото съдържание на страницата и чак след това ме премества на съответния div. Има ли възможност при зареждане на страницата да се стигне до този div още преди тя да е заредила напълно?!




0 потребители четат тази тема

0 регистрирани потребители, 0 гости и 0 анонимни потребители