根据我可以执行的浏览器宽度删除列表项时:
$(document).ready(function() {
var changeWidth = 992;
if ($(window).width() < changeWidth) {
$('li:contains("Home")').remove();
}
});
在研究使用类似于Home
的典型正则表达式模式删除Home|HOME
的方法时,我进行了搜索并了解了RegExp
,所以我尝试了:
$(document).ready(function() {
var changeWidth = 992,
regex = new RegExp('Home|HOME');
if ($(window).width() < changeWidth) {
$('li:contains("' + regex + '")').remove();
}
});
它没有用,所以我研究并找到了Javascript RegExp: Create regex with variable [duplicate]并尝试了:
$(document).ready(function() {
var changeWidth = 992,
regex = new RegExp("Home", "i");
if ($(window).width() < changeWidth) {
$('li:contains("' + regex + '")').remove();
}
});
之后无效,我发现this并尝试:
$(document).ready(function() {
var changeWidth = 992,
pattern1 = "Home",
pattern2 = "HOME",
regex = new RegExp(pattern1+'|'+pattern2, 'gi');
if ($(window).width() < changeWidth) {
$('li:contains("' + regex + '")').remove();
}
});
进一步阅读:
我试过了:
$(document).ready(function() {
var changeWidth = 992,
string = "Home",
regex = new RegExp("HOME", 'gi'),
result = string.match(regex);
if ($(window).width() < changeWidth) {
$('li:contains("' + result + '")').remove();
}
});
如果Home
存在则有效,但HOME
出现时无效。我做错了什么?我如何才能为Home
和HOME
制作正则表达式?