Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Можно ли дать ссылку на onclick?

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


     05.04.2015    Все вопросы » Общие вопросы    1341

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

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


20 комментариев

dimanbmw
Юзер

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

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

vadims
Юзер

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

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

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

dimanbmw
Юзер

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

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

vitnet
Эксперт

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
Юзер

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
Эксперт

vitnet - 5 апреля 2015 23:08 -



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


dimanbmw
Юзер

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

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

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


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

werty1001
Юзер

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
Юзер

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

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

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

ПафНутиЙ
Админ

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

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

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

vadims
Юзер

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

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

ПафНутиЙ
Админ

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

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

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

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

vadims
Юзер

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

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

vadims
Юзер

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

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

werty1001
Юзер

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

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

vadims
Юзер

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

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

vadims
Юзер

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

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

D0Gmatist
Местный

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
Юзер

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

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

vitnet
Эксперт

vitnet - 6 апреля 2015 13:00 -

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

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

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

наверх