Добавить фоновый рисунок и текст при наведении курсора - PullRequest
0 голосов
/ 17 января 2019

Я пытаюсь изменить изображение, чтобы оно изменилось при наведении курсора. Это то, что я сделал до сих пор:

HTML

<div class="picture">
          <div class="text">
              <h1>Hey everyone!</h1>
          </div>

      </div>

CSS

.picture{
width: 200px;
height: 200px;
background-image: url("https://www.w3schools.com/css/trolltunga.jpg");}.text{
background-color: rgba(255,0,0,0.8);
width:200px;
height: 200px;
display: none;}

* Javascript 1014 *

$(".picture").hover(function(){
$(this).children(".text").fadeToggle();});

Ответы [ 2 ]

0 голосов
/ 17 января 2019

jQuery (изменить фон / показать текст):

HTML:

<div class="picture">
    <div class="text">
        <h1>Hey everyone!</h1>
    </div>
</div>

CSS:

.picture {
    width: 200px;
    height: 200px;
    background-image: url("https://www.w3schools.com/css/trolltunga.jpg");
}

.text {
    background-color: rgba(255, 0, 0, 0.4);
    width: 200px;
    height: 200px;
    display: none;
}

JS:

$(".picture").hover(function() {

    $(this).animate({
        opacity: 0.7
    }, 100, function() {
        $(this).css("background-image", "url('https://upload.wikimedia.org/wikipedia/en/2/27/Bliss_%28Windows_XP%29.png')");
    });

    $(".text").fadeToggle();
}, function() {

    $(this).animate({
        opacity: 0.7
    }, 100, function() {
        $(this).css("background-image", "url('https://www.w3schools.com/css/trolltunga.jpg')");
    });

    $(".text").fadeToggle();
});


https://jsfiddle.net/wlecki/28vschr1/

Решение только для CSS:

HTML:

<div class="picture">
  <div class="text">
    <h1>Hey everyone!</h1>
  </div>
</div>

CSS:

.picture {
  width: 200px;
  height: 200px;
  background-image: url("https://www.w3schools.com/css/trolltunga.jpg");
}

.text {
  background-color: rgba(255, 0, 0, 0.4);
  width: 200px;
  height: 200px;
  opacity: 0;
}

.picture:hover {
  background-image: url("https://upload.wikimedia.org/wikipedia/en/2/27/Bliss_%28Windows_XP%29.png");
}

.picture:hover .text {
  opacity: 1;
}

https://jsfiddle.net/wlecki/9vnokdec/

0 голосов
/ 17 января 2019

Работает нормально, как вы можете видеть в этом примере:

$(".picture").hover(function() {
  $(this).children(".text").fadeToggle();
});
.picture {
  width: 200px;
  height: 200px;
  background-image: url("https://www.w3schools.com/css/trolltunga.jpg");
}

.text {
  background-color: rgba(255, 0, 0, 0.8);
  width: 200px;
  height: 200px;
  display: none;
}
<div class="picture">
  <div class="text">
    <h1>Hey everyone!</h1>
  </div>

</div>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...