我是初学者,所以要温柔,我找到了一个从网址中提取信息的脚本,例如我的网址如下:
http://www.website.com/page/pagename?circle=yes&border=no
我想要达到的目标是: 如果"圈"等于"是"然后addClass
请参阅下面的代码:
$(document).ready(function () {
var getUrlParameter = function getUrlParameter(sParam) {
var sPageURL = decodeURIComponent(window.location.search.substring(1)),
sURLVariables = sPageURL.split('&'),
sParameterName,
i;
for (i = 0; i < sURLVariables.length; i++) {
sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] === sParam) {
return sParameterName[1] === undefined ? true : sParameterName[1];
}
}
};
var circle = getUrlParameter('circle');
var border = getUrlParameter('border');
if($(circle == 'yes')) {
$(".testDiv").addClass("circ")
} else {
$(".testDiv").removeClass("circ")
};
if($(border == 'yes')) {
$(".testDiv").addClass("bdr")
} else {
$(".testDiv").removeClass("bdr")
};
});
这是我坚持的最后一部分,我得到了&#34;圈&#34;和&#34;边境&#34;但结果可能是&#34;是&#34;或&#34;不&#34;所以我的想法是&#34; circle&#34;等于&#34;是&#34;添加类别,如果它存在,则删除该类。
目前它只是添加了类,无论结果是yes还是no,即使两者都设置为no。
http://www.website.com/page/pagename?circle=no&border=no
由于
答案 0 :(得分:2)
因此,你的一个问题是你的if语句没有正确的语法
if($(circle == 'yes')) // what you have
if(circle === 'yes') // what you should have
但是,您可以使用toggleClass()
来简化此操作。
$(".testDiv").toggleClass('circ', circle === 'yes');
$(".testDiv").toggleClass('bdr', border === 'yes');
答案 1 :(得分:0)
在if条件下可能是一个拼写错误,在那里删除$,
if(circle == 'yes') {
$(".testDiv").addClass("circ");
} else {
$(".testDiv").removeClass("circ");
}
if(border == 'yes') {
$(".testDiv").addClass("bdr");
} else {
$(".testDiv").removeClass("bdr");
}