我写了这段代码,但我的语法不正确。我尝试了几种方法。下面的第一个似乎应该可以工作,但我还没到那里。在比较多个字符串
时,请指出正确的语法$(document).ready(function() {
var url = window.location.pathname.substring(1);
if ( [ 'page_id=11', 'page_id=19'].indexOf( url ) > -1 ) {
$('#main').css("background-color","#ebecee");
}
});
我也试过这个
$(document).ready(function() {
var url = window.location.pathname.substring(1);
if(url.href.indexOf("page_id=11") > -1 && ("page_id=19") > -1 ) {
$('#main').css("background-color","#ebecee");
}
});
写它的正确方法是什么?
答案 0 :(得分:1)
“在黑暗中拍摄”
部分问题可能是您正在查看window.location.pathname
,在大多数情况下page_id=19
之类的内容不属于路径名 - 它属于查询。
请查看window.location.search
,然后检查 查询参数,或者按照其他人的建议,查看window.location.href
或document.URL
查看整个位置
var query = window.location.search;
if (query.indexOf("page_id=11") > -1 || query.indexOf("page_id=19) > -1) {
// do your stuff
}
答案 1 :(得分:0)
如果您要检查网页的网址中是否有page_id=11
或page_id=19
,这应该有效:
$(document).ready(function() {
if(document.URL.indexOf("page_id=11") > -1 || document.URL.href.indexOf("page_id=19") > -1 ) {
$('#main').css("background-color","#ebecee");
}
});
答案 2 :(得分:0)
var url = location.href;
if(url.indexOf("page_id=11") > -1 || url.indexOf("page_id=19") > -1 ) {
$('#main').css("background-color","#ebecee");
}
答案 3 :(得分:0)
您可以使用localeCompare()
方法。
此方法返回一个数字,指示引用字符串是在排序顺序之前还是之后出现,或者与排序顺序中的给定字符串相同。
语法:
string.localeCompare( param )
返回值:
0:字符串匹配100%。
1:不匹配,参数值位于区域设置排序顺序中字符串对象的值之前
你的案子
var index1 = location.href.localeCompare( "page_id=11" );
var index2 = location.href.localeCompare( "page_id=19" );