Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы Можно ли дать ссылку на onclick?

Можно ли дать ссылку на onclick?


     05.04.2015    Общие вопросы    935

вопрос
Есть меню с всплывающими подсказками через onclick.
Можно ли дать ссылку сразу чтобы сработало onclick?
Например
http://dle-faq.ru/addquest.html#onclick="menu();"

Ответа пока нет


Комментарии пользователей (20)

dimanbmw
3

68 | 17

dimanbmw - 5 апреля 2015 17:12 - Юзер

<a onclick="DLEalert('Сообщение об ошибке','Ошибка');" href="#">Текст ссылки</a>

vadims
10

373 | 63

vadims - 5 апреля 2015 17:13 - Юзер

Я наверное не правильно написал в описание.
Можно ли дать ссылку, чтобы перейдя по ней со стороннего ресурса, сработало onclick?
Даю я вам ссылку на сайт -
http://site.ru/addquest.html#onclick="menu();"

Вы перешли по ссылке, открылся сайт и сработало onclick="menu();" . Такое возможно сделать?

dimanbmw
3

68 | 17

dimanbmw - 5 апреля 2015 17:54 - Юзер

vadims,
нельзя так сделать.

vitnet
218

2171 | 930

vitnet - 5 апреля 2015 18:24 - Эксперт

http://site.ru/addquest.html?onclick=menu

if( document.referrer.match(/[&|\?]onclick=menu/) || document.URL.match(/[&|\?]onclick=menu/) ) alert('ok');

vadims
10

373 | 63

vadims - 5 апреля 2015 19:34 - Юзер

Попробовал так -
<script type="text/javascript">
if( document.referrer.match(/[&|\?]onclick=menu/) || document.URL.match(/[&|\?]onclick=menu/) ) onclick='menu();return false;';
</script>
<a href="#" onclick="menu();return false;">Первое меню</a>

Не срабатывает :(

vitnet
218

2171 | 930

vitnet - 5 апреля 2015 23:08 - Эксперт



Test повесил на голосование в опросе.


dimanbmw
3

68 | 17

dimanbmw - 5 апреля 2015 17:57 - Юзер

Так же как и вызвать js функцию

http://site.ru/addquest.html?p=<script>alert('Сообщение')</script>


Ну точнее можно, но это уже будет xss уязвимость.

werty1001
18

56 | 30

werty1001 - 5 апреля 2015 18:25 - Юзер

Можно повесить ID на тот элемент по которому должен быть клик, например:
<input type="text" id="click-1">
Дальше вставить строчку js кода:
if (window.location.hash) {$(window.location.hash).click();}
Ну и дать ссылку
http://dle-faq.ru/addquest.html#click-1
При переходе будет click по полю #click-1

vadims
10

373 | 63

vadims - 5 апреля 2015 19:32 - Юзер

Почти. :)
Ваш способ просто отображает в том месте где ссылка, но не нажимает ее. То есть -
<a href="#" align="right" onclick="menu();return false;">Первое меню</a>

Не срабатывает.

ПафНутиЙ
1065

3394 | 2433

ПафНутиЙ - 5 апреля 2015 20:17 - Админ

<a href="#" align="right" id="click-1" onclick="menu();return false;">Первое меню</a>

Каков вопрос - таков и ответ. Просто помните об этом.

vadims
10

373 | 63

vadims - 5 апреля 2015 22:48 - Юзер

Павел. Делал так, как описал werty1001, но не работает.
Получается что нельзя дать ссылку
http://dle-faq.ru/addquest.html#click-1
перейдя по которой подгрузится click-1? Так как сейчас если перейти то просто работает ссылка на элемент, но не срабатывает нажатие.

Еще раз спрошу, а то может я туплю и не кто не понимает чего я хочу -
Можно ли дать ссылку для -
<a href="#" align="right" id="click-1" onclick="menu();return false;">Первое меню</a>

такую -
http://dle-faq.ru/addquest.html#click-1

Чтобы перейдя по ссылки сработало НАЖАТИЕ на "Первое меню" ?

ПафНутиЙ
1065

3394 | 2433

ПафНутиЙ - 5 апреля 2015 23:19 - Админ

Ну можно ещё так попробовать:
if (window.location.hash) {$(window.location.hash).trigger('click');}

Хотя подозреваю, что вы делаете что-то не так.
Адрес сайта есть?

Каков вопрос - таков и ответ. Просто помните об этом.

vadims
10

373 | 63

vadims - 5 апреля 2015 23:23 - Юзер

Сайт пока собирается :) и чувствую что долго буду собирать.. :)

vadims
10

373 | 63

vadims - 5 апреля 2015 23:29 - Юзер

Кстати, у Вас Павел что-то похожее, но чуток другое, но все же -
Если перейти по ссылке https://dle-faq.ru/#fpm-area то окно не откроется, а нужно нажать.

werty1001
18

56 | 30

werty1001 - 6 апреля 2015 11:57 - Юзер

Я дал вам рабочий пример, значит вы делаете что-то не так. Вот демо: перейдите по ссылке, там на "Первое меню" я повесил alert по клику и просто перейдя по демо ссылке alert также будет - значит все работает.

vadims
10

373 | 63

vadims - 8 апреля 2015 00:10 - Юзер

Спасибо большое! Все работает!
Я ступил просто js с ошибкой добавлял :) Короче, как написал vitnet - не опытный :D

vadims
10

373 | 63

vadims - 8 апреля 2015 00:10 - Юзер

Этот ответ мне помог!
Спасибо!

D0Gmatist
225

794 | 281

D0Gmatist - 6 апреля 2015 01:11 - Местный

Не покатит так?
$(document).ready(function () {

    var a = location.href;
    if ( a ) {
        var a = a.split('?'),
            a = a[1].split('='),
            b = a[0],
            c = a[1];
    }
    if (b == 'menu' && c != '') {
        $('[data-menu_btn="' + c + '"]').addClass('active');
    }

});
ТЫЦ

Каждый программист знает - в правильном софте все должно быть прекрасно:
и пользовательский интерфейс, и программные решения, и гениальные ошибки!
Болтовня ничего не стоит. Покажите мне код.

vadims
10

373 | 63

vadims - 6 апреля 2015 01:34 - Юзер

Спасибо, что хотите помочь. Завтра буду пробовать. :)

vitnet
218

2171 | 930

vitnet - 6 апреля 2015 13:00 - Эксперт

werty1001,
Забейте! ТС неопытный.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы