Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Кнопки для спичка select (https://javascript.ru/forum/events/60553-knopki-dlya-spichka-select.html)

Alastor 06.01.2016 15:15

Кнопки для спичка select
 
вот есть такой код как заставить эти кнопки переключать серии без раскрытия списка
<div id="cplayer1" style="display:block;"><iframe name='film_cinemas' id='film_cinemas' src='http://vk.com/video_ext.php?oid=177595935&id=162959834&hash=71483af4bb9b25b5&hd=3' width='307' height='260' frameborder='0'></iframe>
            <div class='vk_select'><button class="previous">&#8592</button><select size='1' onchange="javascript:if(document.getElementById('film_cinemas')) document.getElementById('film_cinemas').src=this.value;">
<option value='http://vk.com/video_ext.php?oid=177595935&id=162959834&hash=71483af4bb9b25b5&hd=3'>1 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959836&hash=b095322a1122a202&hd=3">2 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959838&hash=947cc72f8178eb3a&hd=3">3 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959840&hash=c00fa8b2df9ead45&hd=3">4 серия</option></select>

<button class="next">&#8594</button>
</div></div>

Alastor 06.01.2016 15:22

извините за название не могу найти как его поменять(((

рони 06.01.2016 15:43

Alastor,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
<div id="cplayer1" style="display:block;"><iframe name='film_cinemas' id='film_cinemas' src='http://vk.com/video_ext.php?oid=177595935&id=162959834&hash=71483af4bb9b25b5&hd=3' width='307' height='260' frameborder='0'></iframe>
            <div class='vk_select'><button class="previous">&#8592</button><select size='1' onchange="javascript:if(document.getElementById('film_cinemas')) document.getElementById('film_cinemas').src=this.value;">
<option value='http://vk.com/video_ext.php?oid=177595935&id=162959834&hash=71483af4bb9b25b5&hd=3'>1 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959836&hash=b095322a1122a202&hd=3">2 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959838&hash=947cc72f8178eb3a&hd=3">3 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959840&hash=c00fa8b2df9ead45&hd=3">4 серия</option></select>

<button class="next">&#8594</button>
</div></div>

<script>
window.addEventListener("DOMContentLoaded", function() {
    var d = document.querySelector("#cplayer1"),
    s = d.querySelector("select");
    d.addEventListener("click", function(b) {
     var a = b.target, i = s.selectedIndex;
     if(a.classList.contains("previous")) i-- ;
     else if(a.classList.contains("next")) i++  ;
     else return;
     if(i < 0) i = s.options.length - 1;
     i %= s.options.length;
     s.selectedIndex = i;
     s.onchange()
    })
});
</script>
</body>

</html>

Alastor 06.01.2016 15:47

рони,
Спасибо все работает))

Alastor 07.01.2016 00:04

Цитата:

Сообщение от рони (Сообщение 402795)
Alastor,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
<div id="cplayer1" style="display:block;"><iframe name='film_cinemas' id='film_cinemas' src='http://vk.com/video_ext.php?oid=177595935&id=162959834&hash=71483af4bb9b25b5&hd=3' width='307' height='260' frameborder='0'></iframe>
            <div class='vk_select'><button class="previous">&#8592</button><select size='1' onchange="javascript:if(document.getElementById('film_cinemas')) document.getElementById('film_cinemas').src=this.value;">
<option value='http://vk.com/video_ext.php?oid=177595935&id=162959834&hash=71483af4bb9b25b5&hd=3'>1 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959836&hash=b095322a1122a202&hd=3">2 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959838&hash=947cc72f8178eb3a&hd=3">3 серия</option><option value="http://vk.com/video_ext.php?oid=177595935&id=162959840&hash=c00fa8b2df9ead45&hd=3">4 серия</option></select>

<button class="next">&#8594</button>
</div></div>

<script>
window.addEventListener("DOMContentLoaded", function() {
    var d = document.querySelector("#cplayer1"),
    s = d.querySelector("select");
    d.addEventListener("click", function(b) {
     var a = b.target, i = s.selectedIndex;
     if(a.classList.contains("previous")) i-- ;
     else if(a.classList.contains("next")) i++  ;
     else return;
     if(i < 0) i = s.options.length - 1;
     i %= s.options.length;
     s.selectedIndex = i;
     s.onchange()
    })
});
</script>
</body>

</html>

а вот прикол заметил теперь когда нажимаешь на список серия что стоит перезагружается, и еще вопрос как то можно сделать тип отметку остановился на

П/С кстати тут в редакторе все нормально показывает но на просто хтмл странице перегружает

рони 07.01.2016 00:31

Цитата:

Сообщение от Alastor
серия что стоит перезагружается

не должно , проверьте есть ли у вас строка 26 ,
Цитата:

Сообщение от Alastor
отметку остановился на

не понял

Alastor 07.01.2016 00:38

Да вы правы, странно чего она не скопировалась, отметку например в смысле смотрел 5 серию вот ее как то запомнить в куки наприме, или там какой то галочкой оьметить

Alastor 07.01.2016 00:52

рони,
как то так)

рони 07.01.2016 01:04

Alastor,
всё уж тогда скопируйте по новой.
сложно узнать смотрел или нет, может просто стрелочки проверял.

Alastor 07.01.2016 01:18

рони,
так можно сделать как то запоминание серии на которой остановился.
так ее как-то отметить


Часовой пояс GMT +3, время: 01:24.