Bu işlevi yaptım ve mantık akışını ayırmak için bazı yardıma ihtiyacım var. Bir dereceye kadar çalışır ve hataların ayıklanması için yardıma ihtiyaç duyar.jQuery onay kutusunu işaretlemek için fonksiyonumdaki mantığım ile ilgili yardım
Benim HTML: Buraya
<span style="float: left;"><input type="checkbox" id="top" name="position" value="top" /> Top </span>
<span style="float: left;"><input type="checkbox" id="bottom" name="position" value="bottom" /> Bottom </span>
<span style="float: left;"><input type="checkbox" id="left" name="position" value="left" /> Left </span>
<span style="float: left;"><input type="checkbox" id="center" name="position" value="center" /> Center </span>
<span style="float: left;"><input type="checkbox" id="right" name="position" value="right" /> Right</span>
Ve benim jQuery işlevi: Burada
/// Bind Position value to 'CSS : BackgroundPosition' ///
var $positions;
function bgpos(){
var pos = $positions.map(function() {
if($('#top').attr('checked') == true)
$('#bottom').attr('disabled', true);
else
$('#bottom').attr('disabled', false);
if($('#bottom').attr('checked') == true)
$('#top').attr('disabled', true);
else
$('#top').attr('disabled', false);
if($('#left').attr('checked') == true){
$('#right').attr('disabled', true);
$('#center').attr('disabled', true);
}else{
$('#right').attr('disabled', false);
$('#center').attr('disabled', false);
}
if($('#right').attr('checked') == true){
$('#left').attr('disabled', true);
$('#center').attr('disabled', true);
}else{
$('#left').attr('disabled', false);
$('#center').attr('disabled', false);
}
if(this.checked) return this.id;
}).get().join(' ');
//$('#queue').html(pos);
$('#topHeader').css({'backgroundPosition' : pos});
}
$(function() {
$positions = $("form#frm_look_and_feel input[name='position']").change(bgpos);
});
Ve Herkes ilgi ise benim jsFiddle geçerli:
http://jsfiddle.net/s2xi/nWT5J/2/
Sahip olduğum bir sorun, 'Top' seçeneğini tıklattığınızda 'Bottom' özelliğini devre dışı bırakmaz ama 'Bottom'u tıklattığımda' Top 'seçeneğini devre dışı bıraktığımda' Sol 'tuşunu tıklattığımda da aynı sorun oluşur. 'Merkezim' devre dışı bırakılmıyor, ancak 'Sağ' tıklandığında 'Sol' ve 'Merkez' tıklaması gerektiği gibi devre dışı bırakılıyor.
O.O Bazen sizler yeni bir şey öğretip yeni bir şeyler öğretirken JavaScriptli bir yeni kullanıcı gibi hissediyorum! Yardımınız için çok teşekkürler Nick – Eli
@ s2xi - hoşgeldiniz :) –
hmmm, belki radyo çalışabilir. Kullanıcının, tüm bu seçenekler ile karıştırılmadan, backgdound görüntüsünü konumlandırmak için hangi seçeneklerin mevcut olduğunu nasıl belirleyebildiğini inceliyordum. – Eli