Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.04.2013, 21:49
Профессор
Отправить личное сообщение для torsar Посмотреть профиль Найти все сообщения от torsar
 
Регистрация: 06.01.2012
Сообщений: 409

кастомный checkbox
дизайнер надизайнил кастомній чекбокс
(во вложении для наглядности)

как это реализовать грамотно?
Изображения:
Тип файла: png checkbox_blue_selected.png (1.5 Кб, 51 просмотров)
Тип файла: png checkbox_blue_empty.png (1.2 Кб, 50 просмотров)
Ответить с цитированием
  #2 (permalink)  
Старый 28.04.2013, 15:47
Аватар для Dim@
Профессор
Отправить личное сообщение для Dim@ Посмотреть профиль Найти все сообщения от Dim@
 
Регистрация: 21.04.2012
Сообщений: 951

torsar,
почитай http://www.xiper.net/collect/html-an...-checkbox.html
Ответить с цитированием
  #3 (permalink)  
Старый 28.04.2013, 21:34
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,588

В современных браузерах можно обойтись css:
<style>
input[type="checkbox"] {
    display: none;
}
input[type="checkbox"] + label{
    display: inline-block;
    width: 38px;
    height: 32px;
    background-image: url(http://javascript.ru/forum/attachments/xhtml-html-css/1727d1366998566-kastomnyjj-checkbox-checkbox_blue_empty-png);
}
input[type="checkbox"]:checked + label{
    background-image: url(http://javascript.ru/forum/attachments/xhtml-html-css/1726d1366998566-kastomnyjj-checkbox-checkbox_blue_selected-png);
}
</style>
<input type="checkbox" id="checkbox1"><label for="checkbox1"></label>


Только картинки естественно спрайтом делать надо.
__________________
29375, 35
Ответить с цитированием
  #4 (permalink)  
Старый 03.05.2013, 15:21
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Могу сказать как я у себя делал чекбоксы.

Вообщем, есть иконка галочки:


И есть пустое однопиксельное-прозрачное gif изображение.

Вот сам стиль для рамки checkbox'а:
.checkbox {border:1px solid #626262; width:16px; height:16px; opacity:0.8; background:#303030;}
.checkbox:not([alt="2"]):hover {cursor:pointer; opacity:1;}
.checkbox[alt="1"], .checkbox[alt="2"] {background-image: url('ссылка на изобрежние галочки');}
.checkbox[alt="2"] {opacity:0.5;}


А вот уже сам код JavaScript (jQuery):
$('.checkbox').click(function()
{
   var a = $(this).attr('alt');
   if(a != 2) $(this).attr('alt', a == 1 ? 0 : 1);
});


Или альтернативный вариант (не jQuery):
function checkBox(a)
{
   if(a.alt != 2) a.alt = a.alt ? 0 : 1;
}

window.onload = function()
{
   var a = document.getElementsByClassName('checkbox'), b;
   for(b=0; b<a.length; b++) a[b].onclick = function(b)
   {
      checkBox(a[b]);
   }
}


А вот так вставляем в HTML:
Без галочки: <img alt="0" src="пустая картинка.gif" class="checkbox" />
С галочкой:  <img alt="1" src="пустая картинка.gif" class="checkbox" />
Disabled:  <img alt="2" src="пустая картинка.gif" class="checkbox" />


Вот скрин с моего сайта:


Под форму наверное не подойдёт, я у себя сделал так, потому что использую всегда ajax и просто получаю значение атрибута alt.

P.S.: альтернативный код JS не проверял, но работать должен.

Последний раз редактировалось ruslan_mart, 03.05.2013 в 15:26.
Ответить с цитированием
  #5 (permalink)  
Старый 14.05.2013, 17:08
Аспирант
Отправить личное сообщение для constantant Посмотреть профиль Найти все сообщения от constantant
 
Регистрация: 30.07.2008
Сообщений: 87

Железный вариант:
<div class="checkbox">
    <i></i>
    <input id="ch0" type="checkbox" name="name" />
    <label for="ch0">Лейбл для чекбокса</label>
</div>


.checkbox{
    position:relative;
}
.checkbox input{
    position:absolute;
    top:0;
    left:0;
    width: 38px;
    height: 32px;
    -moz-opacity:0 ;
    filter:alpha(opacity: 0);
    opacity: 0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}
.checkbox i{
    display:block;
    width: 38px;
    height: 32px;
    position:absolute;
    top:0;
    left:0;
    backgroung:transparent url('/image/url/example.jpg') no-repeat 0 0;
}
.checkbox.checked i{
    background-position:0 -32px;
}
.checkbox label{
    position:relative;
    padding:0 0 0 48px;
}


$('.chackbox').on({
    change:function(ev){
        var parent = $(ev.delegateTarget);
        var input = $(ev.target);
        parent[(input.prop('checked') ? 'addClass' : 'removeClass')]('checked');
    }
});
Ответить с цитированием
  #6 (permalink)  
Старый 14.05.2013, 19:58
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Ruslan_xDD
И есть пустое однопиксельное-прозрачное gif изображение.
Ты навено еще фон нарезаешь на кусочки "чтоб быстрей грузилось" и в таблицы вставляешь распорки из этих самых пустых гифок, я угадал? А еще теги пишешь кэпслоком, используешь <body onload> атрибут, а фон через bg. А меню верстаешь через <map>, правда же? И конечно же не забываешь обрамлять html-комментарием скрипты и вовсю используешь document.all и layer's.

Это то, с чем у людей ассоциируется однопиксельный gif
Ответить с цитированием
  #7 (permalink)  
Старый 14.05.2013, 20:00
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Aetae
В современных браузерах можно обойтись css:
В сафари и в мобильных браузерах проблем не возникнет?
Ответить с цитированием
  #8 (permalink)  
Старый 14.05.2013, 21:34
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,588

danik.js,
Хз, никогда так не делаю. Ну его в пень.)
__________________
29375, 35
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
checkbox = checkbox Слейп jQuery 2 30.01.2013 15:24
Не могу получить состояние checkbox-а POMAH-UST Элементы интерфейса 2 08.10.2012 07:43
jqgrid tree and checkbox gaz2003 jQuery 0 17.12.2011 15:59
Вывод выбранных данных и проверка checkbox MasterHrust Javascript под браузер 3 28.09.2011 17:44
Функция disable для нескольких checkbox allforweb Элементы интерфейса 4 19.12.2010 17:51