2012-05-04 2 views
0

Извините, если это уже отправлено, но мне действительно нужна ваша помощь.Нормальное изображение и выбранное изображение? Требуется jQuery или css?

Я хочу следующий:

Допустим, у меня есть этот образ, как нормальное изображение, которое может быть нажата. http://i.imgur.com/SOd1W.png

Теперь допустим, когда я нажимаю на этом изображении она будет исчезать это изображение: http://i.imgur.com/QW15C.png

Может кто-нибудь сказать мне, как код этого при выборе Нажмите на изображение? Или, если он не может быть включен, то как же еще, пожалуйста?

EDIT: Также я забыл упомянуть. Если у меня есть выбор 2 выбора ... И если я нажму на один из вариантов, он затухает, и если я выберу выбор 2, выбор 1 должен исчезнуть, а выбор 2 исчезнет, ​​как и должно ...

+0

просто FYI, вы можете добиться того, что с помощью CSS3 на всех современных браузерах. – Christoph

+0

Вам нужно, чтобы изображение Fade оставалось прежним после того, как вы нажмете на первое изображение? или вам просто нужно, чтобы изображение исчезло только тогда, когда оно щелкнуло и вернулось к нормальному изображению после? –

+0

Обновлено немного. Да, он должен FadeIn и оставаться бледным, если не выбран выбор 2. Затем выбор 2 исчезает, а выбор 1 исчезает. – dvLden

ответ

1

Предположив наплывом, вы имеете в виду анимированный увядает, вы можете использовать следующий код:

HTML:

<div id="something" class="theImage" style="height: 242px; width: 194px; background: url(http://i.imgur.com/QW15C.png);"> 
    <img src="http://i.imgur.com/SOd1W.png" /> 
</div> 

<div id="somethingElse" class="theImage" style="height: 242px; width: 194px; background: url(http://i.imgur.com/QW15C.png);"> 
    <img src="http://i.imgur.com/SOd1W.png" /> 
</div> 

JQuery:

$(document).ready(function(){ 
    $('.theImage img').click(function(){ 
     var current = ($(this).parent().attr('id') == 'something') ? 'somethingElse' : 'something';console.log(current); 
     $(this).fadeOut(); 
     $('#'+current + ' img').fadeIn(); 
    }); 
}); 

Это покажет образ по умолчанию, чтобы начать с, затем выцветать, чтобы показать фоновое изображение своего контейнера при нажатии. Вы можете использовать разные HTML-элементы в зависимости от вашей ситуации.

+0

Это работает, но я забыл упомянуть, что если есть более одного изображения. Поэтому, если я выбираю один, он исчезает, чтобы выбрать, если я нажму другой, он исчезает, чтобы выбрать, а предыдущий не исчезает до невыбранного ... – dvLden

+0

Я изменил его для работы с другим изображением - вы можете расширить его, чтобы использовать столько, сколько вам нужно – LeonardChallis

+0

Теперь, о чем я говорю! Большое спасибо человеку! – dvLden

0

очень просто в CSS, вам нужно придать изображению активное pseudoclass:

.img {фон: URL (firstimg.png);}

.img: активный {фон: URL (clickimg.png);}

Вот пример: http://jsfiddle.net/J6kJh/

+0

http://jsfiddle.net/5ftGz/ Нет, извините. Это только активен при щелчке, не обрабатывает его как активный/выбранный элемент. – dvLden

+0

Ну ладно, так вам нужна кнопка в виде переключателя – febLey

0
<img src="a.png" id="MyImg" /> 

JQuery:

$("#MyImg").click(function() { $(this).attr("src","b.png") }); 
+0

Можете ли вы сделать переход затухания? – Faust

0

Вы ищете что-то вроде этого?

<img src="http://i.imgur.com/SOd1W.png" onclick="$(this).fadeOut().attr('src','http://i.imgur.com/QW15C.png').fadeIn();"> 
+0

Это тоже хорошо ... Но когда у меня есть 2 изображения и выберите первый, а затем еще один, они оба остаются в «выбранном». – dvLden

1

Один из способов (есть несколько):

Включите оба изображения в качестве тегов (не фоновые изображения), обернутых внутри DIV:

<div id="wrapper"> 
    <img src="http://i2.cdn.turner.com/cnn/dam/assets/120423012508-merkel-sarkozy-c1-main.jpg" id="img1" /> 
    <img src="http://d2o307dm5mqftz.cloudfront.net/1005866/1334968885891/Perfect%20Gift%20No%20Pink_300x250.jpg" id="img2" /> 
</div> 

CSS:

#wrapper{ 
    position:relative; 
    height:242px; 
    width:194px; 
}  
#wrapper img{ 
    position:absolute; 
    left:0px; 
    top:0px; 
    height:242px; 
    width:194px; 
} 
#img1{display:none;} 

JQuery:

$('#wrapper').on('click', function (event){ 
    $('#wrapper img').fadeToggle(); 
}); 
+0

Это приведет к исчезновению первого *, а во втором - постепенном исчезновении. Вы не можете этого сделать, просто заменив атрибут src, так что вам понадобится 2 изображения. – Faust

+0

Я не понимаю ... http://jsfiddle.net/gGgYv/ Я скопировал то, что вы сказали, но изображения не пересекаются друг с другом ... – dvLden

+0

@NenadNovakovic: извините за беспорядок. Я очистил его и протестировал в jsFiddle: http://jsfiddle.net/DQUGy/ – Faust

1
$(document).ready(function() { 
    var imagelist = ["http://i.imgur.com/SOd1W.png","http://i.imgur.com/QW15C.png"]; 

    $('.img1').click(function(e) { 
      var myimage = imagelist [Math.floor(Math.random()*imagelist .length)]; 
      $('.img1').attr('src', myimage); 

    }); 
}); 

Смотрите demo ... Источник simple image randomizer with jQuery by Brian Cray

В качестве альтернативы вы можете использовать CSS3, а также. Подробнее о A Simple Fade with CSS3

+0

Ум в демо ... Это fadesIn и fadesOut же изображение ... У меня нет подсказок с jquery, поэтому, если вы не против ставить fadeIn 2nd image и fadeOut, если у меня есть еще одно изображение для выбора в качестве выбора ... – dvLden

+0

то вы должны получить все изображения откуда-то. Могут быть помещены в массив –

+0

Отличный ... это то, что: D http://api.jquery.com/jQuery.inArray/ Причина Я вижу там некоторый массив текста, Бог знает, как использовать его с изображениями. – dvLden

1

Использовать этот Javascript

function Image(imageId) 
{ 
    var obj = document.getElementById(imageId); 
    if(obj.alt=='Fade'){ 
     obj.src="image1.jpg";  
     obj.alt = "Unfadde"; 
    } 
    else 
    { 
     obj.src="image2.jpg";  
     obj.alt = "Fade"; 
     } 
} 

и HTML

<img src="image1.jpg" onclick=Image("image") id="image" name="image" alt="Fade" /> 
+0

Это интересное, но оно не исчезает в/из. А также, если у меня есть более одного изображения, щелкните по 1-му изображению и оставите выбранным. Нажмите кнопку «2», чтобы заменить изображение и остаться выбранным, а также сохранить предыдущее изображение. – dvLden

Смежные вопросы