Моим вопрос очень похоже на Reduce multiple if else statementsАльтернатива кратного если другое заявление в JavaScript
У меня есть несколько, если другое заявление, и я хотел бы использовать JQuery каждую функцию, чтобы сделать код более эффективным, но я могу» t выяснить, как это сделать.
Я запускаю jQuery в Wordpress, который, как я считаю, работает в режиме noconflict, поэтому я не могу получить больше, чем больше (что я считаю) расширенными темами, которые приводят примеры для работы для меня, поскольку я не могу понять правильный синтаксис функции для использования.
Если кто-нибудь может помочь и объяснить, как это сделать для меня, это было бы удивительно. Вот мой код:
var $h6p = $("h6 + p");
var $h5p = $("h5 + p");
var $h4p = $("h4 + p");
var $h3p = $("h3 + p");
var $h2p = $("h2 + p");
var $h1p = $("h1 + p");
var $fullercolor_bg = "rgba(240,234,222,0.9)";
if($h1p.mouseIsOver()) {
$h1p.prev().css("background-color", $fullercolor_bg);
} else {
$h1p.prev().css("background-color", "");
}
if($h2p.mouseIsOver()) {
$h2p.prev().css("background-color", $fullercolor_bg);
} else {
$h2p.prev().css("background-color", "");
}
if($h3p.mouseIsOver()) {
$h3p.prev().css("background-color", $fullercolor_bg);
} else {
$h3p.prev().css("background-color", "");
}
if($h4p.mouseIsOver()) {
$h4p.prev().css("background-color", $fullercolor_bg);
} else {
$h4p.prev().css("background-color", "");
}
if($h5p.mouseIsOver()) {
$h5p.prev().css("background-color", $fullercolor_bg);
} else {
$h5p.prev().css("background-color", "");
}
if($h6p.mouseIsOver()) {
$h6p.prev().css("background-color", $fullercolor_bg);
} else {
$h6p.prev().css("background-color", "");
}
(Если CSS был предыдущий примыкающие братьев и сестер селектор я был бы на седьмом небе в этот момент.)
Edit: Спасибо за помощь до сих пор, одна вещь, которую я должен иметь упомянутая пустая установка выражения else преднамерена. Я использовал CSS для таргетинга на селектор, и в нем установлен фоновый цвет, поэтому мне нужно его установить. Не прозрачно.
Поместите все объекты jQuery в массив, выполните итерацию по массиву и примените логику к каждому элементу массива. Если вы не знаете, как работать с массивами: http://eloquentjavascript.net/chapter4.html. –
Спасибо за ссылку. Я раскрою свои навыки массива. – patrickzdb