Javascript 有没有办法保持按下html按钮?

Javascript 有没有办法保持按下html按钮?,javascript,html,Javascript,Html,我有一个按钮。 是否有任何方法可以通过javascript在视觉上保持按下并取消按下 谢谢不,那是不可能的 我建议你使用类似的方法。它们完全支持这种行为:使用javascript无法做到这一点 但是你可以通过添加/删除css类,或者直接编辑你选择使用的css属性来使用javascript来模拟这种效果。我个人会尝试使用css并使用边框样式插入 <input type="button" value="Inset Border" style="border-style:inset;" />

我有一个按钮
。 是否有任何方法可以通过javascript在视觉上保持按下并取消按下


谢谢不,那是不可能的


我建议你使用类似的方法。它们完全支持这种行为:

使用javascript无法做到这一点


但是你可以通过添加/删除css类,或者直接编辑你选择使用的css属性来使用javascript来模拟这种效果。

我个人会尝试使用css并使用边框样式
插入

<input type="button" value="Inset Border" style="border-style:inset;" />


有关不同样式的列表,请参见。

您可以使用此
document.getElementById(“some_id”).style.border。

<input id="some_id" onTap="change_me()" type="button" name="name" value="value"/>

var button_switch = "on";
function change_me(){
    if(button_switch==="on"){
        document.getElementById("some_id").style.border = "3px inset rgb(254, 255, 208)";
        button_switch = "off";
    }else{
        document.getElementById("some_id").style.border = "3px outset rgb(254, 255, 208)";
        button_switch = "on";
    } 
}

var按钮\u开关=“打开”;
函数更改_me(){
如果(按钮开关==“打开”){
document.getElementById(“some_id”).style.border=“3px inset rgb(25425208)”;
按钮_开关=“关闭”;
}否则{
document.getElementById(“some_id”).style.border=“3px起始rgb(25425208)”;
按钮_开关=“打开”;
} 
}

通过以下方式切换按钮的视觉状态:

btn.onclick=function(e) {
    this.style.borderStyle = (this.style.borderStyle!=='inset' ? 'inset' : 'outset'); 
}

当您需要查看它是否被按下时,只需检查是否
btn.style.borderStyle==='inset'

灵感来源于Brad Christie的答案,这是一个基于锚HTML元素的稍加修改的示例,它通过设置不同的背景和圆角来改善视觉效果:

<a class="bouton" style="border-width:1px;border-radius:3px;" onclick="javascript:this.style.borderStyle = (this.style.borderStyle!==\'inset\' ? \'inset\' : \'outset\');this.style.background = (this.style.borderStyle!==\'inset\' ? \'\' : \'#ccc\')" value="Details" >&hellip;</a>
要下载按钮的图片:

函数pp(){
if(document.getElementById('pBut')。innerHTML=='Pause'){
//做点什么
document.getElementById('pBut')。innerHTML='Continue';
document.getElementById('pBut').style.borderStyle='inset';
}
否则{
//做些别的事情
document.getElementById('pBut')。innerHTML='Pause';
document.getElementById('pBut').style.borderStyle='start';
}
}

暂停
你为什么要这么做?@Oded:我想他会把它当作一个切换按钮。我想用单选按钮是可能的,但那将是一个很大的谎言。我面临着一个类似的问题。我有一个用于构建UI的库,但是这些按钮与jQuery切换按钮不同(我需要这些按钮)。我不知道如何将这两个库(我正在使用的库和jQueryUI)交织在一起。有什么建议吗?我也想到了CSS技巧,但我想他说的是由按下/未按下按钮表示的开/关按钮@ThiefMaster的建议将更好地满足需要。@TheVillageDiot:在单击时应用类是不可行的?它只需要看起来被按下,实际上不需要被按下这对JavaScript非常有效:“pressedButton.style.borderStyle=“inset”。下面是一个可以在JavaScript中设置的属性列表:仅将边框样式设置为inset并没有给我带来我所希望的视觉效果。添加“背景图像:-moz线性渐变(顶部,#f0f0f0,#dfdff);“插图帮了我的忙。谢谢@nonzaprej,谢谢你的编辑。现在它更有意义了。”。
a.bouton {
display:inline-block;
width:40px;
height:18px;
background-image:url('bouton_gris_petit.png');
background-repeat:no-repeat;
border: 1px solid #888;
font-size:11.3px;
color:#666;
cursor:pointer;
text-shadow:#666 0px 0px 0px;
text-align:center;
border-radius:3px;
}