Хотя я думаю, что сделал это раньше, но на этот раз этот код работает некорректно.Не удается управлять содержимым div html с помощью jQuery?
Идея мне нужно выполнить, чтобы проверить, если tabheader ДИВА предъявляются, а затем заменить (+) строку с (-), и наоборот, когда DIV является tabheader ДИВА скрыт.
Вот HTML код:
<div>
<div class="tabheader" value="1">
<p> + sea food </p>
</div>
<div id="content_1" class="tabcontent">
hi all 11111
</div>
<div class="tabheader" value="2">
<p> + pizza </p>
</div>
<div id="content_2" class="tabcontent">
hi all 222222
</div>
<div class="tabheader" value="3">
<p> + sandwitches </p>
</div>
<div id="content_3" class="tabcontent">
hi all 33333
</div>
</div>
CSS код:
.tabcontent {
display: none;
}
.tabheader {
height: 24px;
width: 80%;
background-color: #B2BBD0;
margin: 18px;
direction: rtl;
text-align: right;
}
Javascript код
$('.tabheader').click(function() {
$('#content_'+$(this).attr("value")).toggle("slow");
var header_content = $(this).html();
if($(this).toggle()) {
header_content = header_content.replace("+","-");
$(this).html(header_content);
}
else {
header_content = header_content.replace(/\-/g,"+");
$(this).html("header_content");
}
});
Проблема в том, когда я нажимаю на tabheader DIV, он исчезает! Может ли кто-нибудь сказать мне, где проблема?
Что $ (это) .toggle() делает? Вам нужна функция, которая возвращает true или false. – Emil
Я думал, что может возвращать true, если $ (this) переключается, когда я могу правильно использовать .toggle (showOrHide). можете ли вы сказать мне, как определить статус $ (this) .toggle? – user504363
В вашем коде было несколько проблем. Во-первых, условие if проверяет возвращаемое значение переключения (если всегда возвращает значение, отличное от фальсификации). Во-вторых, вы, вероятно, не хотите переключать видимость табулятора, я считаю, что вы только хотели заменить + на - в заголовках и наоборот. – techfoobar