$('#bg-btn').click(function(){
$('#bg-toggle').slideToggle('slow');
$('#bg-url').keyup(function(){
var value = $(this).val();
$('#main-bg').css('background-image', 'url("' + value + '")');
}).keyup(); <<<<<<<<<<<<<<<<<<<<<<<<<< This one
});
ボタンをクリックすると、赤色の空白の値(背景画像なし)..だから、あなたはkeyup()を削除する必要があります。最初の問題のためのエンド
から、あなたは... .hide()
とを使用することができますので、あなたのコードは、この
$('#bg-btn').click(function(){
$('#bg-toggle').slideToggle('slow');
$('#bg-url').keyup(function(){
var value = $(this).val();
// you can use .hide() and fadeOut()
$('#main-bg').hide(0).css('background-image', 'url("' + value + '")').fadeOut(100);
});
});
ようにする必要がありますしかし、私はために、コードを分離する方が良いだろうと思います
$('#bg-url').keyup(function(){
var value = $(this).val();
// you can use .hide() and fadeOut()
$('#main-bg').hide(0).css('background-image', 'url("' + value + '")').fadeOut(100);
});
$('#bg-btn').click(function(){
$('#bg-toggle').slideToggle('slow');
if($('#bg-url').val().trim() !== ''){ // if url is not empty
$('#bg-url').keyup(); // or $('#bg-url').trigger('keyup');
}else{ // if url empty
console.log('No background image found');
}
});
助けてくれてありがとう、それはかなり良い変更だが、フェードアウトが全体のdivが消えます:/しかし、それは私が:) –
@JakubSzczepanikを予想以上に良い作品..はい、このコードでは、全体のdiv非表示を行います/ fadeOut ..あなたは別々に背景画像をフェードイン/フェードアウトすることはできません。必要な場合は、絶対位置でdiv内の画像を作成し、それをバックグラウンドとして動作させる必要があります。 fadeIn/fadeOutそのイメージ.. Good Luck :) –