2016-05-07 2 views
0

Proto.io имеет отличное решение для переключателей вкл./Выкл., И они очень просты в использовании. Тем не менее, у меня возникли проблемы с выяснением того, как я добавляю обработчик событий к коммутатору после того, как я его нажму. В частности, я спрашиваю, как определить состояние, в котором находится переключатель, после того, как я щелкнул его.Как назначить обработчик события для включения/выключения proto.io?

Я попытался проверить состояние элемента <input>, но он не изменился, используя proto.io.

Вот HTML:

<div class="onoffswitch"> 
    <input type="checkbox" name="onoffswitch" class="onoffswitch-checkbox" id="myonoffswitch" checked> 
    <label class="onoffswitch-label" for="myonoffswitch"> 
    <span class="onoffswitch-inner"></span> 
    <span class="onoffswitch-switch"></span> 
    </label> 
</div> 

Вот CSS:

.onoffswitch { 
    position: relative; width: 90px; 
    -webkit-user-select:none; -moz-user-select:none; -ms-user-select: none; 
} 
.onoffswitch-checkbox { 
    display: none; 
} 
.onoffswitch-label { 
    display: block; overflow: hidden; cursor: pointer; 
    border: 2px solid #999999; border-radius: 20px; 
} 
.onoffswitch-inner { 
    display: block; width: 200%; margin-left: -100%; 
    transition: margin 0.3s ease-in 0s; 
} 
.onoffswitch-inner:before, .onoffswitch-inner:after { 
    display: block; float: left; width: 50%; height: 30px; padding: 0; line-height: 30px; 
    font-size: 14px; color: white; font-family: Trebuchet, Arial, sans-serif; font-weight: bold; 
    box-sizing: border-box; 
} 
.onoffswitch-inner:before { 
    content: "ON"; 
    padding-left: 10px; 
    background-color: #34A7C1; color: #FFFFFF; 
} 
.onoffswitch-inner:after { 
    content: "OFF"; 
    padding-right: 10px; 
    background-color: #EEEEEE; color: #999999; 
    text-align: right; 
} 
.onoffswitch-switch { 
    display: block; width: 18px; margin: 6px; 
    background: #FFFFFF; 
    position: absolute; top: 0; bottom: 0; 
    right: 56px; 
    border: 2px solid #999999; border-radius: 20px; 
    transition: all 0.3s ease-in 0s; 
} 
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner { 
    margin-left: 0; 
} 
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch { 
    right: 0px; 
} 

Спасибо!

ответ

0

Добавить событие onclick к checkbox и зарегистрировать this.checked.

<input type="checkbox" name="onoffswitch" 
class="onoffswitch-checkbox" id="myonoffswitch" checked 
onclick="alert(this.checked);"> 
Смежные вопросы