Я хочу динамически создать элемент <a href="mailto:...">
, а затем "щелкнуть" его. Все без изменения страницы.
Я пытаюсь это:
$('<a href="mailto:[email protected]"> </a>').click();
...но безрезультатно
Я хочу динамически создать элемент <a href="mailto:...">
, а затем "щелкнуть" его. Все без изменения страницы.
Я пытаюсь это:
$('<a href="mailto:[email protected]"> </a>').click();
...но безрезультатно
Нажатие на ссылку означает изменение window.location, так как насчет
window.location = "mailto:[email protected]";
Это не jquery, но работает нормально.
var link = document.createElement('a');
link.href = url;
document.body.appendChild(link);
link.click();
link.download = url;
В противном случае файл xml будет отображаться в браузере.
- person JS5; 27.06.2018
Чтобы заставить его работать с jQuery, вам сначала нужно выбрать элемент DOM внутри объекта jQuery.
$('body').append('<a id="link" href="mailto:[email protected]"> </a>');
$('#link')[0].click();
Обратите внимание на [0]
скрипка: https://jsfiddle.net/fkwhvvhk/
click()
не вызывает функцию DOM для каждого элемента запроса?
- person T-moty; 12.05.2016
.click()
работать с DOM, а не с объектом jQuery
должен быть:
$('<a href="mailto:[email protected]"></a>')[0].click();
jQuery
, чтобы избежать конфликта с $: jQuery(<a href="/product-edit/${this.selected.id}"></a>
)[0].click();
- person Grant; 07.07.2020
Попробуйте что-то вроде этого...
Демонстрация: http://jsfiddle.net/wdm954/xtTGX/1
$('.a').append('<a class="b" href="mailto:[email protected]"> </a>');
$('.b').click(function() {
window.location = $(this).attr('href');
}).click();
Вы можете создать тег следующим образом:
$('PARENT_TAG').append('<a id="dinamic_link" href="mailto:[email protected]"> </a>');
//Now click it
$('#dinamic_link').click();
ХТХ!
.click()
не работает по /любой/ ссылке
- person aidan; 29.06.2011
почему бы просто не изменить расположение окна на href ссылки? Есть ли какая-то конкретная причина, по которой вам нужно использовать ссылку?
В противном случае:
window.location = 'http://example.com';
У меня были обнаружены некоторые проблемы с аналогичной проблемой, и я нашел самый простой способ для меня:
var link = document.createElement('a');
link.download = 'profile.png';
link.href = '...';
link.id = 'example';
link.class = '...';
document.body.appendChild(link);
link.click();
В моем случае я потерял много времени, пытаясь сделать это с помощью jquery, выполнение $('#example').click()
but у меня не работает. По крайней мере, проблема заключалась в jquery, я обходился без него. Я надеюсь, что это может быть полезно для кого-то. Это простой способ установить якорь для загрузки изображения и щелкнуть сразу после него.
Я бы сказал, что вам следует подумать о добавлении href в контейнер (в основном div), используя .append() и вызвать .click()
$('parent_div').append('<a id="link" href="mailto:[email protected]"> </a>');
//Now click it
$('#link').click();
.click()
не работает по /любой/ ссылке
- person aidan; 29.06.2011
Имитация обычных щелчков невозможна. Вы можете запускать только click
обработчиков событий, привязанных к элементу.
Как сообщил @Alex, вы можете измените window.location
для достижения того же эффекта..
Только что делал туториал по этому поводу!
$("[href='mailto:[email protected]']").click();
Это должно выбрать все элементы с атрибутом href со значением «mailto:[email protected]».
www.w3schools.com/jquery/jquery_selectors.asp
вы должны использовать .on , а затем вызывать .click . Динамически генерируемая гиперссылка не работает с простым .click()
.click()
не работает по /любой/ ссылке
- person aidan; 29.06.2011
.click()
не работает по /любой/ ссылке
- person aidan; 29.06.2011