Так что я новичок в JS и написал это. В основном я складывал изображения с абсолютной позицией и 0 непрозрачностью, и когда вы нажимаете кнопку, это придает этому рисунку непрозрачность 1, а затем придает остальным непрозрачность 0. Также есть эффект перехода. В любом случае, мой вопрос, если вы посмотрите на JavaScript в моем коде:Есть ли более простой способ множественного, если еще JavaScript?
A: Я так делаю? B: Есть ли лучший способ, не имея столько кода?
Вот соответствующий код:
<div id="navwrap">
<a href="#" onclick="toggle()">pic 1</a>
<a href="#" onclick="toggle2()">pic 2</a>
<a href="#" onclick="toggle3()">pic 3</a>
<a href="#" onclick="toggle4()">pic 4</a>
</div>
<img id="pic1" class="pic" src="http://miriadna.com/desctopwalls/images/max/Ideal-landscape.jpg">
<img id="pic2" class="pic" src="http://www.hdwallpaperscool.com/wp-content/uploads/2013/11/nature-landscape-hd-wallpapers-widescreen-nature-desktop-images.jpg">
<img id="pic3" class="pic" src="http://images.fanpop.com/images/image_uploads/JAPAN-LANDSCAPE-japan-419407_1920_1440.jpg">
<img id="pic4" class="pic" src="http://www.personaltouchcolorado.com/wp-content/uploads/2013/01/Lawn-Landscape.jpg">
<script>
var w=document.getElementById('pic1');
var x=document.getElementById('pic2');
var y=document.getElementById('pic3');
var z=document.getElementById('pic4');
</script>
<script>
function toggle()
{
if (w.style.opacity=='0')
{
w.style.opacity='1';
}
else
{
w.style.opacity='0';
}
if (w.style.opacity=='1')
{
w.style.opacity='1';
}
else
{
w.style.opacity='1';
}
{
x.style.opacity='0';
}
{
y.style.opacity='0';
}
{
z.style.opacity='0';
}
}
</script>
<script>
function toggle2()
{
if (x.style.opacity=='1')
{
x.style.opacity='0';
}
else
{
x.style.opacity='1';
}
if (x.style.opacity=='1')
{
x.style.opacity='1';
}
else
{
x.style.opacity='1';
}
{
w.style.opacity='0';
}
{
y.style.opacity='0';
}
{
z.style.opacity='0';
}
}
</script>
<script>
function toggle3()
{
if (y.style.opacity=='1')
{
y.style.opacity='0';
}
else
{
y.style.opacity='1';
}
if (y.style.opacity=='1')
{
y.style.opacity='1';
}
else
{
y.style.opacity='1';
}
{
w.style.opacity='0';
}
{
x.style.opacity='0';
}
{
z.style.opacity='0';
}
}
</script>
<script>
function toggle4()
{
if (z.style.opacity=='1')
{
z.style.opacity='0';
}
else
{
z.style.opacity='1';
}
if (z.style.opacity=='1')
{
z.style.opacity='1';
}
else
{
z.style.opacity='1';
}
{
w.style.opacity='0';
}
{
x.style.opacity='0';
}
{
y.style.opacity='0';
}
}
</script>
Ну, если/elses в целом намного проще, если вы их отделите должным образом. –
Попробуйте использовать оператор switch. См. [Эту ссылку] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/switch?redirectlocale=en-US&redirectslug=JavaScript%2FReference%2FStatements%2Fswitch) для получения дополнительной информации. – hkk
Извините, это мой второй день с javascript, я угадал этот код, и он работает, и мне просто хотелось посмотреть, правильно ли я делаю это. – user2762183