Директория

Сега е общоизвестно, че не трябва да използвате псевдо протокола javascript: т.е.

Защо е лошо и кои аналози трябва да се използват?

Причина 1. Идеологическа причина

Javascript псевдо протокол: оттеглено за дълго време. Той се поддържа от браузърите, но не е описан в уеб стандартите.

От друга страна обаче, за използването на javascript: изградени са редица интересни технологии, например маркери.

Причина 2. Без деградация

Ако е възможно, по-добре е да направите тази опция:

Тези посетители, които имат деактивиран javascript, ще последват връзката към /openComment.php?id=123 и пак ще видят нещо полезно там.

Търсачките също ще индексират /openCommend.php?id=123.

Когато кликнете върху такава връзка с деактивиран javascript, човекът ще бъде хвърлен в горната част на страницата. Не яжте гуд. Но трябва да има някакъв href. Затова е по-добре да направите това:

Страницата /nojs.html може например да съдържа заявка за активиране на javascript.

Причина 3. Недостатъци на интеграцията

Свойството onclick е много по-удобно за управление от javascript. Той определя манипулатора на събитията. Можете да направите няколко манипулатора, да присвоите функция, а не низ като в href и т.н.

И javascript: псевдо протоколът не е събитие. Той отпада от общата схема и следователно е неудобен.

P.S Строго погледнато, и onclick вътре в HTML не трябва да се посочват. Кодът за маркиране и javascript трябва да вървят отделно. Но понякога onclick е удобен, така че защо не.

Причина 4. Отрицателна използваемост

Много често те използват скрипт в линк, когато кликват върху снимка или описание на продукт.

Положително приложение?

Ако все пак искате нищо да не се случи, когато посетител с деактивиран javascript кликне върху връзката:

Може ли това да бъде полезно в реалния живот?

Самият аз не го използвам, но не знам друг начин да направя връзката неработеща за посетители без JS.

коренно различен от

Положителната употреба е, че такъв href просто не прави нищо с js деактивиран. И в същото време не хвърля кликер в горната част на страницата като .

И така, ако: "javascript: //"?

Най-доброто е asdfasdf
И нищо няма да се случи, няма да го хвърли никъде и ще работи само с активиран JS

Можете също да използвате следните методи: print ();

за разлика от #blabla
удобно е, че в лентата на състоянието можете да видите не http: //. пълен път на страницата. #blabla и краткият етикет на javascript: blablabla
това е една употреба, ако js се свързва и създава

Още по-удобно е при четене на кода, въпреки че кодът се оказва много пъргав. където се използва подобен onclick, се оказва по-лесно да се разбере кода, отколкото там, където събитията са закачени в дълбочината на кода, което усложнява изследването.

но нямам нужда от никой там . да се мушкам, за да анализирам/прочета моя код! къде и какво се крие и как всичко е подредено, това е моя работа и аз самият знам къде какво! Основното е, че работи . това е добре!

идиот. тогава дизайнерските модели са излишни. и спагети кодът след това управлява вашия начин.

да пиша правилно:
javascript: void (0)

Прочети го. не разбра нищо. какви са разликите.

Ще отида да го прочета отново.

Обяснете на зелено, ако javascript е деактивиран, тогава връзката трябва да отиде на друга страница и ако е активирана, трябва да се стартира заявка "AJAX" и да се заредят нови данни.
Как най-добре да го приложим?

Чели ли сте статията? Има и пример -

В href поставяте връзка към страницата с изключен javascript, а в onclick - функция, която извиква вашата заявка.

Понякога пиша href = "javascript:;"

href = "javascript:;"
и сега стартирайте това чудо на IE7

е, почти винаги пиша така и работи навсякъде, добре, поне за мен във всички браузъри.

Ако не бъркам нищо,. в IE все още причинява артефакти, свързани с прехода в състояние „чакане за зареждане“ - по-специално убива gif-анимация, динамични ефекти със снимки (преобръщане) и т.н. На Винград имаше няколко такива, където хората наистина стъпиха на тази гребла. Така че не бих препоръчал да правите това на неработещи връзки без JS, по-добре е, IMHO, нещо като

Или закачете href-s динамично, като заредите DOM.

И за пример за смислено приложение на javascript: -protocol (освен отметки), бих предпочел да цитирам това.

Със сигурност на мнозина ще им е интересно да научат повече за Bookmarklets, събрах най-информативните връзки по тази тема:

благодаря помогна да се отървете от #

И ако изобщо не пишете href = ", а просто

Ако напишете в css, за да промените курсора и цвета, това ще бъде

Ако не искате човек да отиде някъде без javascript, защо да използвате

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

предишната публикация е моя, ето коригираната версия

PS. съжалявам, че предишната ми публикация се оказа неправилно.

Ако в връзката няма url, тогава търсачките не им пука за тази връзка, те я игнорират, или се обясняват правилно, или не пудрят мозъка на хората

Напълно съм съгласен, тук човекът ще погребе псевдо протокола, защото не разбира, че някой има нужда от него. и те направиха толкова бърборене за такъв дребен проблем. Сякаш един от тях поне веднъж някой заради този подр.

Като цяло няма връзка, няма проблем.

Няма сайт - няма проблем, IMHO)

Но понякога е трудно да се направи този протокол. Как, например, мога да получа от делф TWebBrowser изпълни някои javascript без Навигирайте ('javascript.')? Ако знаете най-добрите опции, моля споделете.

Точно, точно! Особено ако искате нещо да се случи на страницата със събития, случващи се в програмата, а не на страницата! Тази технология е погребана рано ... Въпреки това, както много други!

Да опитаме:)
Ясно е защо последният оператор се нуждае от оператора void?

И тъй като псевдо-протоколът се отнася до обекта за местоположение, това ще се отнася и до прозореца. Много удобно, нали?)

това винаги се отнася до прозорец, освен ако не е принуден.

да, изглежда, че ако е необходимо да се използва А, най-удобно е да се създаде допълнителна котва до него, благодаря за идеята

Котвите никога няма да остареят
като, .

Някой е остарял и работи нормално и стабилно.
За да забраните на автора да използва псевдо протокола и името, всички останали са безплатни)

И какво ви пречи да използвате тази опция?

и направете същия манипулатор в бекенда:

Струва ми се, че това е най-правилният от всички варианти.
Това използване постига максимално разделяне и максимална валидност.
1) HTML съдържа само HTML
2) JS е свързан отделно с и евентуално към или нещо по ваш избор, което ще го стартира. В резултат на това получаваме практически отсъстващи inline-js.
3) CSS се прави по същия начин.
4) Вътрешната част с удоволствие ще изпълнява редица функции, позволявайки ви да не използвате такива "замърсяващи" конструкции във вашия Html:
document.write. и т.н.

Струва ми се, че този подход прави живота най-лесен в уеб разработката.

.
2) JS е свързан отделно в " и вероятно в или .
.
4) .

Стрип таг.

2) JS е свързан отделно в " и евентуално в " или .

Патица Не разбрах нещо.
ако javascript: това е лошо.
защо е добре да се използва тогава? javascript: void (0) ?
и защо работи с js деактивиран ?

Според мен най-добрият вариант.
a href = "/ reg.php" Регистър/a

Какво означава това на теория? Кодът е взет от nigma.ru. Те споменаха този формуляр тук - с наклонени черти, но не обясниха разликите между опциите.

a href = "javascript: //"> нулиране

Не използвайте onclick - при големи проекти това може да доведе до бъркотия. Има събития. Те са създадени специално за тази цел. Използвайте void (0) и забравете за потребители, които са деактивирали JS. Повярвайте ми, ако сайтът ви е интересен, няма да загубите нищо.

Иля, мисля, че си струва да добавим за това към статията

И за светкавицата. По принцип fscommand има цял интерфейс за работа със страница.

защо е написано върнете false; в onclick?

Що се отнася до мен, по-добре е така:

"#send_message" е по-добре написано от "#" по две причини:
1. потребителят може да види този ред в състоянието и да разбере по-добре какво прави този бутон
2. с грешка браузърът няма да хвърли в горната част на страницата

Не знам дали е казано тук, не забелязах. Друга причина да направите това е да скриете текста на връзката да не се показва в window.status, защото те могат да бъдат много неприятни, както в моя случай, когато самите връзки са генерирани от скрипт и имат много различни параметри.

Здравейте всички!
Имам кляп тук, използвайки връзка
в IE7, а именно когато страницата се зарежда с помощта на протокола https: //

По принцип, когато щракнете, изскача грешка.
Може ли някой да ми каже какво да използвам. # Не предлагайте

Благодаря на всички предварително.

И как да обвържете събитие с действие на потребител, когато той щракне върху връзката с десния бутон на мишката и избере „отвори в нов раздел“?

Подкрепям lnked. Ако по някаква причина функцията се провали (логическа грешка), ние просто връщаме return true. И на страницата, към която потребителят беше пренасочен, вече пишем грешка.

Да. много копия се счупиха!
Но можете просто:

Празният href презарежда страницата, плъзнете.

С android всичко е възможно да се направи?
На един сайт видях как Аднин написа такъв линк, но не успя) имаше само текст.
Исках да се науча

Заслужава ли си да се притеснявате за потребители, които са деактивирали JS?

Здравейте! Загубих възможността да активирам/деактивирам javascript във firefox някъде. Преди това натисках настройки-настройки и тук можете да поставите или премахнете отметката от квадратчето. сега това не е когато влизам в настройките. Какво да правя моля кажете ми?

Премахна тази функция във firefox.
Можете да го направите чрез about: config, но имате нужда от него?