2016-08-25 2 views
-1

У меня есть галерея, и я хочу связать ее с элементом select. Поэтому, когда я нажимаю на любое изображение, выбранную опцию для изменения, и когда я выбираю вариант обхода изображения. У меня есть следующий HTML-код, но я очень новичок в js, и я не могу сделать этот код сам, может ли кто-нибудь помочь?Элемент выбора ссылки со списком

    <select id="tShirtDropdown"> 
         <option value="0" data-img-src='imgs/tShirt64.jpg'>1</option> 
         <option value="1" data-img-src='imgs/tShirt64.jpg'>2</option> 
         <option value="2" data-img-src='imgs/tShirt64.jpg'>3</option> 
         <option value="3" data-img-src='imgs/tShirt64.jpg'>4</option> 
         <option value="4" data-img-src='imgs/tShirt64.jpg'>5</option> 
         <option value="5" data-img-src='imgs/tShirt64.jpg'>6</option> 
         <option value="6" data-img-src='imgs/tShirt64.jpg'>7</option> 
         <option value="7" data-img-src='imgs/tShirt64.jpg'>8</option> 
         <option value="8" data-img-src='imgs/tShirt64.jpg'>9</option> 
        </select> 

        <ul id="menGallery"> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>1</h1></li> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>2</h1></li> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>3</h1></li> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>4</h1></li> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>5</h1></li> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>6</h1></li> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>7</h1></li> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>8</h1></li> 
         <li class="fLeft"><img src="imgs/tShirt64.jpg"><h1>9</h1></li> 
        </ul> 

ответ

0

Пример использования JQuery и ваш HTML:

$('#tShirtDropdown').change(function() { 
 
    var selected = $(this).val(), 
 
     el = $('#menGallery').children().eq(selected).find('img'); 
 
    
 
    $('#menGallery li img').removeClass('active'); 
 
    el.addClass('active'); 
 
}); 
 

 
$('#menGallery img').click(function() { 
 
    var myIndex = $(this).parent().index(); 
 
    
 
    $('#menGallery li img').removeClass('active'); 
 
    $(this).addClass('active'); 
 
    $('#tShirtDropdown').val(myIndex); 
 
});
ul { 
 
    list-style: none; 
 
} 
 

 
li { 
 
    width: 10%; 
 
    display: inline-block; 
 
    border:1px dotted #ddd; 
 
    text-align: center; 
 
} 
 

 
li img { 
 
    margin-top:5px; 
 
} 
 

 
.active { 
 
    border: 2px solid blue; 
 
} 
 

 
h1 { 
 
    text-align: center; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
 
<select id="tShirtDropdown"> 
 
    <option data-img-src='http://placehold.it/50x50?text=1' value="0"> 
 
     1 
 
    </option> 
 
    <option data-img-src='http://placehold.it/50x50?text=2' value="1"> 
 
     2 
 
    </option> 
 
    <option data-img-src='http://placehold.it/50x50?text=3' value="2"> 
 
     3 
 
    </option> 
 
    <option data-img-src='http://placehold.it/50x50?text=4' value="3"> 
 
     4 
 
    </option> 
 
    <option data-img-src='http://placehold.it/50x50?text=5' value="4"> 
 
     5 
 
    </option> 
 
    <option data-img-src='http://placehold.it/50x50?text=6' value="5"> 
 
     6 
 
    </option> 
 
    <option data-img-src='http://placehold.it/50x50?text=7' value="6"> 
 
     7 
 
    </option> 
 
    <option data-img-src='http://placehold.it/50x50?text=8' value="7"> 
 
     8 
 
    </option> 
 
    <option data-img-src='http://placehold.it/50x50?text=9' value="8"> 
 
     9 
 
    </option> 
 
</select> 
 
<ul id="menGallery"> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=1"> 
 
     <h1>1</h1> 
 
    </li> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=2"> 
 
     <h1>2</h1> 
 
    </li> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=3"> 
 
     <h1>3</h1> 
 
    </li> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=4"> 
 
     <h1>4</h1> 
 
    </li> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=5"> 
 
     <h1>5</h1> 
 
    </li> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=6"> 
 
     <h1>6</h1> 
 
    </li> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=7"> 
 
     <h1>7</h1> 
 
    </li> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=8"> 
 
     <h1>8</h1> 
 
    </li> 
 
    <li class="fLeft"> 
 
     <img src="http://placehold.it/50x50?text=9"> 
 
     <h1>9</h1> 
 
    </li> 
 
</ul>

+0

функцию doAlertMe() { \t вар х = ParseInt (event.target.value); \t для (я = 0; я <= menShirts.length; я ++) { \t \t, если (х == ParseInt (menOptions [I] .value)) { \t \t \t menOptions [I] .addAttribute (» выбран '); \t \t} \t} }; –

+0

Я сделал эту функцию, но он говорит, что addAttribute не является функцией. –

+0

Любая идея ?????? –

Смежные вопросы