Ответ 1
Вам нужно открыть новое окно:
window.open(url);
Я использую этот бит кода jQuery для получения href ссылки:
var url = $(this).attr('href');
- и этот бит кода перейдет к этому href:
window.location = url;
Все так, как я хочу, за исключением того, что новая страница открывается в том же окне, что и предыдущая, и я хочу, чтобы она открывалась в новом окне или вкладке (что-то, что в простом html было бы достигнуто с помощью target = "_ blank" ).
Вопрос: Как я могу открыть href в новом окне или вкладке с помощью jQuery?
Благодарим за помощь!
Вам нужно открыть новое окно:
window.open(url);
Использование
var url = $(this).attr('href');
window.open(url, '_blank');
Обновить: href
лучше получить с помощью prop, так как он вернет полный URL-адрес и немного быстрее.
var url = $(this).prop('href');
Вопрос. Как открыть href в новом окне или вкладке с помощьюJQuery?
var url = $(this).attr('href').attr('target','_blank');
Определите, использовался ли целевой атрибут и содержит "_blank". Для мобильных устройств, которые не любят "_blank", это надежная альтернатива.
$('.someSelector').bind('touchend click', function() {
var url = $('a', this).prop('href');
var target = $('a', this).prop('target');
if(url) {
// # open in new window if "_blank" used
if(target == '_blank') {
window.open(url, target);
} else {
window.location = url;
}
}
});
Если вы хотите создать всплывающее окно через jQuery, вам нужно будет использовать плагин. Кажется, это похоже на то, что вы хотите:
http://rip747.github.com/popupwindow/
В качестве альтернативы вы всегда можете использовать функцию JavaScript window.open.
Обратите внимание, что при любом подходе новое окно должно быть открыто в ответ на ввод/действие пользователя (например, щелчок по ссылке или кнопке). В противном случае блокировщик всплывающих окон браузера просто заблокирует всплывающее окно.
Функция .ready
используется для вставки атрибута после завершения загрузки страницы.
$(document).ready(function() {
$("class name or id a.your class name").attr({"target" : "_blank"})
})
Попробуйте использовать следующий код.
$(document).ready(function(){
$("a[@href^='http']").attr('target','_blank');
});