こんにちは、画像をクリックすると、slideToggle 関数を使用しています。ページに 4 つの画像があるとします。特定の画像をクリックすると、画像に関連する特定のコンテンツが表示されます。現在、画像ごとに個別に宣言した以下のスクリプトを使用して取得しました。しかし、同じ機能を備えたページに約100個の画像を含める必要があります。関数を100回繰り返すことはできませんが、これは良い習慣ではありません。関数を繰り返さずに単一のループを使用してこれを取得する方法を教えてください。
<script type="text/javascript">
$(document).ready(function() {
$(".img").click(
function() {
if ($(this).hasClass('on')) {
$(this).removeClass('on').addClass('off');
} else if ($(this).hasClass('off')) {
$(this).removeClass('off').addClass('on');
}
$(function() {
$(".hide-con").slideToggle("800");
});
});
$(".img1").click(
function() {
if ($(this).hasClass('on')) {
$(this).removeClass('on').addClass('off');
} else if ($(this).hasClass('off')) {
$(this).removeClass('off').addClass('on');
}
$(function() {
$(".hide-con1").slideToggle("800");
});
});
$(".img2").click(
function() {
if ($(this).hasClass('on')) {
$(this).removeClass('on').addClass('off');
} else if ($(this).hasClass('off')) {
$(this).removeClass('off').addClass('on');
}
$(function() {
$(".hide-con2").slideToggle("800");
});
});
$(".img3").click(
function() {
if ($(this).hasClass('on')) {
$(this).removeClass('on').addClass('off');
} else if ($(this).hasClass('off')) {
$(this).removeClass('off').addClass('on');
}
$(function() {
$(".hide-con3").slideToggle("800");
});
});
$(".img4").click(
function() {
if ($(this).hasClass('on')) {
$(this).removeClass('on').addClass('off');
} else if ($(this).hasClass('off')) {
$(this).removeClass('off').addClass('on');
}
$(function() {
$(".hide-con4").slideToggle("800");
});
});
});
</script>
HTML
<div class="img on"></div>
<div class="hide-con">
<h1>Background</h1>
<p><strong>Textile-India (T-India)</strong> is an Indian company engaged </p>
</div>
<div class="img1 on"></div>
<div class="hide-con1">
<h1>Background</h1>
<p><strong>Textile-India (T-India)</strong> is an Indian company engaged </p>
</div>
<div class="img2 on"></div>
<div class="hide-con2">
<h1>Background</h1>
<p><strong>Textile-India (T-India)</strong> is an Indian company engaged </p>
</div>
<div class="img3 on"></div>
<div class="hide-con3">
<h1>Background</h1>
<p><strong>Textile-India (T-India)</strong> is an Indian company engaged </p>
</div>
<div class="img4 on"></div>
<div class="hide-con4">
<h1>Background</h1>
<p><strong>Textile-India (T-India)</strong> is an Indian company engaged </p>
</div>