У меня есть HTML-страницу с несколькими вхождениями описаний, которые не гиперссылками, сопровождающихся явной гиперссылки, например, так:Как изменить родителя к тому, что текст ребенка в JQuery
<h2 class="description">Awesome website!</h2>
<p><a href="http://www.google.com/">http://www.google.com/</a></p>
Когда экран становится ниже определенного размера, я хочу (1) явную ссылку уйти и (2) описание стать гиперссылкой. В качестве промежуточного шага, я просто хочу, чтобы изменить h2
, чтобы текст a
, но это не работает:
$(window).resize(function() {
if ($(window).width() < 500) {
$(".description").text($(this).siblings("p").find("a").text());
$("a").hide();
} else {
$("a").show();
// replace the description, too
}
});
Я попытался набрать в немного больше, и обнаружили, что это не даже работа:
$(window).resize(function() {
if($(window).width() < 500) {
$(".description").text($(this).text()); // the description disappears
}
});
даже если console.log($(".description").text());
дает мне текст, связанный с description
.
Я предполагаю, что текст, который я хочу использовать, исчезает, прежде чем его можно будет использовать.
Есть ли обходной путь или правильный способ сделать это? Я знаю, что могу гиперссылку на оба и удалить/восстановить гиперссылку по мере изменения размера экрана, но мне интересно, может ли что-то вроде того, что я пытаюсь, работать.
Есть ли причина, что вы не используете медиазапросы? – itamar
Я думаю, что у вас есть неправильное представление о 'this' – mic4ael
Ничего кроме невежества, я думаю - я не так хорошо знаком с более сложными функциями CSS. Я не понял, что вы могли бы заменить текст медиа-запросом. –