Я задавался вопросом, может ли кто-нибудь помочь мне!Сочетание утверждений JQuery
У меня есть два отдельных оператора jQuery на моем сайте, которые в основном действуют на div, который при нажатии на него будет расширять зону содержимого, которая скрыта отрицательным полем справа от экрана.
Что я хочу сделать, так это наличие нескольких элементов на каждой странице, но я хочу, чтобы что-то было максимально упорядочено, где мне не нужно добавлять все новое утверждение для каждого элемента!
Вот ссылка на веб-сайт в вопросе (элементы находятся справа - один со знаком плюс, ниже другой иконкой Twitter)
Ниже приведен код, у меня есть :
// Настройка функции:
function extraOn() {
var w = $('.homeplus-expanded').width();
$('.homeplus-expanded').animate ({
right : '0',
'margin-right':'0px'
}, 'fast');
}
function extraOff() {
var ws = $('.homeplus-expanded').innerWidth();
$('.homeplus-expanded').animate({
right : '0',
'margin-right':-ws
},'fast');
}
function shareOn() {
var w = $('.homeplus-expanded').width();
$('.shareplus-expanded').animate ({
right : '0',
'margin-right':'0px'
}, 'fast');
}
function shareOff() {
var sp = $('.shareplus-expanded').innerWidth();
$('.shareplus-expanded').animate({
right : '0',
'margin-right':-sp
},'fast');
}
// и затем вызвать эти функции OnClick:
$('.homeplus').click(function(){
extraOn();
});
$('.homeplus-expanded span.close').click(function(){
extraOff();
});
$('.shareplus').click(function(){
shareOn();
});
$('.shareplus-expanded span.close').click(function(){
shareOff();
});
Как вы можете видеть, я уверен, что есть некоторые кресты над и некоторыми возможностями для создания коды много аккуратнее и более модульного ....
Спасибо за любую помощь вы можете предоставить .. .
Спасибо, Дерек, я думаю, это похоже, что я искал. Как вы уже догадались, я использую функцию innerWidth, чтобы скрыть элемент, щелкнув по клику, и показать другой элемент. –
Это похоже на модульное, расширяемое и будущее доказательство!:) –
Я только что попробовал это - он работает так хорошо! Это просто элегантное решение! Только одно, я хочу, чтобы элемент, который был нажат, чтобы скрыть себя при нажатии, а затем снова появится, когда нажата кнопка закрытия на элементе expandElement - я предполагаю, что я бы использовал .innerWidth на этом тоже, но не уверен, как сделать это без разрушения элегантности! –