Javascript网格布局按钮

Javascript网格布局按钮,javascript,html,css,javascript-objects,Javascript,Html,Css,Javascript Objects,我有一个由24个按钮组成的网格(请参见代码片段1)是用CSS完成的。我的问题是,JavaScript和按钮是否可以获得与单选按钮相同的效果(一次只能选择一个按钮) 我试图实现的一个例子是代码片段2。示例2的问题是基于jquery而不是js,并且它有一个巨大的慢速库…我在寻找几个示例,但大多数都是JQ而不是js 任何帮助或指向正确方向都将受到高度赞赏 多谢各位 .btn\u sq{ 显示:内联; 框大小:内容框; 宽度:28px; 高度:28px; 保证金:2倍; 填充:10px; 边框:1px

我有一个由24个按钮组成的网格(请参见代码片段1)是用CSS完成的。我的问题是,JavaScript和按钮是否可以获得与单选按钮相同的效果(一次只能选择一个按钮)

我试图实现的一个例子是代码片段2。示例2的问题是基于jquery而不是js,并且它有一个巨大的慢速库…我在寻找几个示例,但大多数都是JQ而不是js

任何帮助或指向正确方向都将受到高度赞赏

多谢各位

.btn\u sq{
显示:内联;
框大小:内容框;
宽度:28px;
高度:28px;
保证金:2倍;
填充:10px;
边框:1px实心#018dc4;
边界半径:3px;
文本对齐:居中;
字体:普通粗体24px/普通Verdana,日内瓦,无衬线;
光标:指针;
}
.btn_sq:悬停{
显示:内联块;
颜色:rgba(0,0,0,1);
边框:1px实心#007cad;
背景:rgba(58187234,1);
盒影:2px2px0RGBA(0,0,0,0.3);
过渡:所有200ms三次贝塞尔(0.42,0,0.58,1);
}
.btn_周:活动{
颜色:紫色;
边框:1px实心#018dc4;
背景:rgba(186,18,209,1);
长方体阴影:0 1px4p0 rgba(0,0,0,0.2)插图;
文本阴影:无;
过渡:所有50ms立方贝塞尔(0.42,0,0.58,1);
}





若要获得预期结果,请使用.btn\u sq:focus而不是.btn\u week:active(似乎不可用)

.btn\u sq{
显示:内联;
框大小:内容框;
宽度:28px;
高度:28px;
保证金:2倍;
填充:10px;
边框:1px实心#018dc4;
边界半径:3px;
文本对齐:居中;
字体:普通粗体24px/普通Verdana,日内瓦,无衬线;
光标:指针;
}
.btn_sq:悬停{
显示:内联块;
颜色:rgba(0,0,0,1);
边框:1px实心#007cad;
背景:rgba(58187234,1);
盒影:2px2px0RGBA(0,0,0,0.3);
过渡:所有200ms三次贝塞尔(0.42,0,0.58,1);
}
.btn_sq:焦点{
颜色:紫色;
边框:1px实心#018dc4;
背景:rgba(186,18,209,1);
长方体阴影:0 1px4p0 rgba(0,0,0,0.2)插图;
文本阴影:无;
过渡:所有50ms立方贝塞尔(0.42,0,0.58,1);
}





若要获得预期结果,请使用.btn\u sq:focus而不是.btn\u week:active(似乎不可用)

.btn\u sq{
显示:内联;
框大小:内容框;
宽度:28px;
高度:28px;
保证金:2倍;
填充:10px;
边框:1px实心#018dc4;
边界半径:3px;
文本对齐:居中;
字体:普通粗体24px/普通Verdana,日内瓦,无衬线;
光标:指针;
}
.btn_sq:悬停{
显示:内联块;
颜色:rgba(0,0,0,1);
边框:1px实心#007cad;
背景:rgba(58187234,1);
盒影:2px2px0RGBA(0,0,0,0.3);
过渡:所有200ms三次贝塞尔(0.42,0,0.58,1);
}
.btn_sq:焦点{
颜色:紫色;
边框:1px实心#018dc4;
背景:rgba(186,18,209,1);
长方体阴影:0 1px4p0 rgba(0,0,0,0.2)插图;
文本阴影:无;
过渡:所有50ms立方贝塞尔(0.42,0,0.58,1);
}





遵循JQuery UI编码标准的纯Javascript代码:


jQuery UI可选-显示为网格
#反馈{字体大小:1.4em;}
#可选。默认值{背景:#FECA40;}
#可选。选中{背景:#F39814;颜色:白色;}
#可选{列表样式类型:无;边距:0;填充:0;宽度:450px;}
#可选li{边距:3px;填充:1px;浮点:左;宽度:100px;高度:80px;字体大小:4em;文本对齐:居中;}
函数hasClass(el,类名){
if(el.classList)
返回el.classList.contains(className)
其他的
return!!el.className.match(新的RegExp(“(\\s | ^)”+className+”(\\s |$))
}
函数addClass(el,类名){
if(el.classList)
el.classList.add(类名称)
如果(!hasClass(el,className))el.className+=“”+className
}
函数removeClass(el,类名){
if(el.classList)
el.classList.remove(className)
else if(hasClass(el,className)){
var reg=new RegExp(“(\\s | ^)”+className+”(\\s |$))
el.className=el.className.replace(注册表“”)
}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • var classname=document.getElementsByClassName(“默认值”); var myFunction=function(){ 对于(var i=0;i
    遵循JQuery UI编码标准的纯Javascript代码:

    
    jQuery UI可选-显示为网格
    #反馈{字体大小:1.4em;}
    #可选。默认值{背景:#FECA40;}
    #可选。选中{背景:#F39814;颜色:白色;}
    #可选{列表样式类型:无;边距:0;填充:0;宽度:450px;}
    #可选li{边距:3px;pa