- 13, May 2024
- #1
У меня есть код HTML и jQuery.
Идея состоит в том, что если переключатель отмечен, элемент div #kaaviotaulukko должен быть прокручен до левой позиции отмеченного переключателя.
И проверенный переключатель должен быть расположен по центру окна браузера по горизонтали. Проблема в том, что мой текущий код jQuery не центрирует проверенный переключатель по горизонтали.
Вот код jQuery:
Идея состоит в том, что если переключатель отмечен, элемент div #kaaviotaulukko должен быть прокручен до левой позиции отмеченного переключателя.
И проверенный переключатель должен быть расположен по центру окна браузера по горизонтали. Проблема в том, что мой текущий код jQuery не центрирует проверенный переключатель по горизонтали.
Вот код jQuery:
<DIV id="kaaviopohja" style="width: 100%;">
<div id="kaaviotaulukko" style="white-space: nowrap; position: relative; text-align: center;">
<div style="display: inline-block">
<!--
--><DIV STYLE="DISPLAY:INLINE-BLOCK"><input name="nappi" type="radio" id="someID-102" /><div style="float:left;width:0">
</div><div class="krs" style="display: inline-block;width:70px">extra
</div></DIV><!--
--><DIV STYLE="DISPLAY:INLINE-BLOCK"><input name="nappi" type="radio" id="someID-101" /><div style="float:left;width:0">
</div><div class="krs" style="display: inline-block;width:350px">LQ
</div></DIV><!--
--><DIV STYLE="DISPLAY:INLINE-BLOCK"><input name="nappi" type="radio" id="someID-7" /><div style="float:left;width:0">
</div><div class="krs" style="display: inline-block;width:350px">L4
</div></DIV><!--
--><DIV STYLE="DISPLAY:INLINE-BLOCK"><input name="nappi" type="radio" id="someID-6" checked="checked" /><div style="float:left;width:0">
</div><div class="krs" style="display: inline-block;width:350px">L3
</div></DIV><!--
--><input name="nappi" type="radio" id="someID-100" /><div style="float:right;width:0">
</div><!--
--><div style="z-index:99;width:70px;position:fixed;left:0;top:100px;margin:auto;background-color:red"><br />
</div>
<div style="z-index:99;width:70px;position:fixed;right:0;top:100px;margin:auto;background-color:red"><br />
</div>
</div>
</div>
</DIV>
Код (JavaScript): А вот мой HTML-код, который еще не очищен, но, надеюсь, вы уловили идею.
$(document).ready(function(){ $('#kaaviotaulukko input').each(function() { var container = $('#kaaviotaulukko'), scrollTo = $(this); if(scrollTo.is(':checked')) { var leftOffset = scrollTo.offset().left - container.offset().left + container.scrollLeft(); container.animate({ // scrollLeft: scrollTo.offset().left - container.offset().left + container.scrollLeft() scrollLeft: leftOffset }, 1000); } }); });
HTML: