У меня есть две ссылки на страницы, на одной из которых надо показать картинку, а на другой наоборот не показывать.
http://test_url/products - показать изображение.
http://test_url/product - не показывать.
Проверяю вот таким условием:
if (window.location.pathname.indexOf('/product') === -1) {
$('.img').show();
}
В этом условии если индекс строки '/product'
равен -1, то картинку я не показываю. Но как в этом условии показать изображение если урл содержит /products
?
if (window.location.pathname.indexOf('/product') === -1 ||
window.location.pathname.indexOf('/products') != -1) {
...
Обратите условие
if (window.location.pathname.indexOf('/products') !== -1) {
$('.img').show();
}
Еще можно регуляркой. Это значительно медленнее чем indexOf()
, но как еще один возможный вариант (и как предостережение не использовать его) - думаю, стоит упомянуть.
const arr = [ 'http://test_url/product', 'http://test_url/products', 'http://test_url/product?foo', 'http://test_url/product/?bar', 'http://test_url/products/?baz'];
for (let show, i = 0; i < arr.length; i++) {
show = (/\/products(?:$|[/?])/i).test(arr[i]); // или, что еще ужаснее, = !!arr[i].match(/\/product(s)?(?:$|[/?])/i)[1]
console.log(`${arr[i]} - ${show ? 'показывать' : 'не показывать'}`);
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Всем приветВозникла проблема с svg анимацией
Сделал для примера простенькое electronjs приложение
Как получить текст из поля input? В моём случае выдаёт пустую строку