У меня есть этот код, который отлично работает, но я хотел бы иметь возможность сделать так, чтобы при появлении изображения текстовый слой исчезал, и была ссылка для возврата xt и удаления изображения. Как мне сделать это ... что-то связанное с изменением видимости и наложения?
<html>
<script type = "text/javascript">
//<!--
function sbox(boxName, xname) {
theBox = document.getElementById(boxName);
theBox.className = xname;
}
//-->
</script>
<style>
#main {
position: absolute;
width: 800px;
height: 600px;
}
.test1 {
position: absolute;
top: 20px;
width: 80px;
height: 80px;
border-style: solid;
border-color: green;
}
.test2 {
position: absolute;
top: 120px;
width: 80px;
height: 80px;
border-style: solid;
border-color: red;
}
.test3 {
position: absolute;
top: 220px;
width: 80px;
height: 80px;
border-style: solid;
border-color: blue;
}
.test4 {
position: absolute;
top: 320px;
width: 80px;
height: 80px;
border-style: solid;
border-color: black;
}
.test5 {
position: absolute;
top: 20px;
width: 80px;
height: 80px;
border-style: solid;
border-color: yellow;
}
#test6 {
width: 80px;
height: 80px;
border-style: solid;
border-color: green;
}
#test7 {
width: 80px;
height: 80px;
border-style: solid;
border-color: green;
}
</style>
<div class = "test1" id = "test1">
<a href = "#" onclick = "sbox('test1', 'test5'); return false;">test1</a>
</div>
<div class = "test2" id = "test2">test2</div>
<div class = "test3" id = "test3">test3</div>
<div class = "test4" id = "test4">test4</div>
</html>



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Что я делаю, так это использую DIV и CSS, чтобы установить для параметра display значение none для скрытия и блокировки для отображения.
<div id = "hider" style = "display:block"> contents here </div>
и используйте javascript, чтобы показать или скрыть содержимое
...
// find the element and it's stored in "elem"
vis = elem.style;
if (showit) {
vis.display = 'block';
} else {
vis.display = 'none';
}
где showit - логическое значение, указывающее, что вы хотите сделать. Вы также можете проверить визуальный дисплей и переключить его. Это покажет скрытый div и скроет показанный div.
Поэкспериментируйте со свойством отображения:
<div id = "text1">Some text here</div>
<a href = "" onClick = "toggleImg('text1');return false;">Show</a></div>
<div id = "text1_img" style = "display:none"><img src = "/your/image_text1.png" /></div>
<div id = "text2">Some text here</div>
<a href = "" onClick = "toggleImg('text2');return false;">Show</a>
<div id = "text2_img" style = "display:none"><img src = "/your/image_text2.png" /></div>
<div id = "text3">Some text here</div>
<a href = "" onClick = "toggleImg('text3');return false;">Show</a>
<div id = "text3_img" style = "display:none"><img src = "/your/image_text3.png" /></div>
А затем функция JS:
<script type = "text/javascript">
function toggleImg(myid)
{
objtxt = document.getElementById(myid);
objimg = document.getElementById(myid+'_img');
if ( objtxt.style.display == 'block' ) // Show image, hide text
{
objtxt.style.display = 'none';
objimg.style.display = 'block';
}
else // Hide image, show text
{
objimg.style.display = 'none';
objtxt.style.display = 'block';
}
}
</script>
Надеюсь, вы сможете применить это к своим нуждам.
Я пробовал это и не могу заставить его работать. Куда бы я поместил текст и нужна ли мне таблица стилей? В основном я не уверен, как адаптировать мою существующую страницу для подачи в суд на этот формат?
UPS! Я ошибся (поменял a - на _). Я отредактировал код, попробуйте еще раз.
Здравствуйте, я думаю, что теперь он работает, я просто хотел проверить, будет ли он работать с одним слоем или нет, как с кодом, который я вставил?
Есть ли способ добавить это к тому, что я должен делать в один клик?