Javascript setAttribute不使用JQuery
我正在尝试使此代码正常工作: HTML:Javascript setAttribute不使用JQuery,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试使此代码正常工作: HTML: potch\u off功能运行良好,但我似乎无法设置属性 我不是最精通jQuery和JavaScript的人,但我正在尝试。用这个来添加类: $("#click-no-po").addClass('main-but active'); 或单击此按钮以删除类: $("#click-no-po").removeClass('main-but active'); 不要忘记使用ready函数确保js代码找到ID。尝试切换类 $('a.main-but')。
potch\u off
功能运行良好,但我似乎无法设置属性
我不是最精通jQuery和JavaScript的人,但我正在尝试。用这个来添加类:
$("#click-no-po").addClass('main-but active');
或单击此按钮以删除类:
$("#click-no-po").removeClass('main-but active');
不要忘记使用ready函数确保js代码找到ID。尝试切换类
$('a.main-but')。在('click',函数(e)上{
e、 预防默认值();
$(此).toggleClass(“活动”);
});代码>
.active{背景:红色;显示:内联块;}
如果您试图使用jquery,请尝试类似的方法
首先,我在您的测试代码中,只有id为的元素“a”,所以在您的函数中
function activeSelectPorOff() {
document.getElementById('click-no-po').setAttribute('class', 'main-but active');
document.getElementById('click-cpo').setAttribute('class', 'main-but');
}
document.getElementById('click-cpo')返回一个null元素,当您尝试使用.setAttribute()读/写时,这个trhows和exeption u可以读取null的一个属性
function activeSelectPorOff() {
var a=document.getElementById('click-no-po');
var b=document.getElementById('click-cpo').setAttribute('class', 'main-but');
try{
a.setAttribute('class', 'main-but active');
}catch(e){
console.log(e)
}
try{
b.try{a.setAttribute('class', 'main-but active');
}catch(e){
console.log(e)
}
}
这应该避免函数停止,另一种方法是检查a=在尝试设置属性之前为空控制台错误?这是您应该首先查看的地方。jQuery是否涉及到任何地方?我没看见。门廊是否正常工作?有点愚笨?不要对类使用setAttribute
。相反,设置.className
属性,如document.getElementById('click-no-po')。className='main but active'
try--document.getElementById('click-no-po')。classList.add(“类”);----避免尝试…捕获。如果(a)a.setAttribute(…)
,请使用。谢谢。这是可行的,但几秒钟后,在Chrome的代码视图中,“活动”类消失了。有什么原因吗?
function activeSelectPorOff() {
$('click-po').toggleClass('main-but');
}
function activeSelectPorOff() {
document.getElementById('click-no-po').setAttribute('class', 'main-but active');
document.getElementById('click-cpo').setAttribute('class', 'main-but');
}
function activeSelectPorOff() {
var a=document.getElementById('click-no-po');
var b=document.getElementById('click-cpo').setAttribute('class', 'main-but');
try{
a.setAttribute('class', 'main-but active');
}catch(e){
console.log(e)
}
try{
b.try{a.setAttribute('class', 'main-but active');
}catch(e){
console.log(e)
}
}