@3dben

Не работает preventDefault Что я неправильно сделал?

Здравствуйте. Мне нужно предотвратить обычное поведение ссылки. Картинка не должна открываться в новом окне. Для этого я исспользую preventDefault, но картинка всё ровно открывается в новом окне. Подскажите что не так

HTML
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="js/c.js" type="text/javascript"></script>
    <script src="js/jquery.js" type="text/javascript"></script>
    <link rel="stylesheet" href="css/css.css">
    <title>Document</title>
</head>
<body>
   <div id="gallery">
<div id="big"><img src="images/gal/start.jpg" alt="Старт" /></div>
<div id="small">
<a href="images/gal/1.jpg"><img src="images/gal/1_mini.jpg" alt="Миниатюра 1" /></a>
<a href="images/gal/2.jpg"><img src="images/gal/2_mini.jpg" alt="Миниатюра 2" /></a>
<a href="images/gal/3.jpg"><img src="images/gal/3_mini.jpg" alt="Миниатюра 3" /></a>
<a href="images/gal/4.jpg"><img src="images/gal/4_mini.jpg" alt="Миниатюра 4" /></a>
</div>
</div>
 
</body>
</html>


CSS
#gallery {
    padding: 20px;
    border:1px solid #cccccc;
    width: 483px;
    margin: 10px auto;
    height: 380px;
}

#big {
    background-image: url("../images/gal/loader.gif");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    width: 483px;
    height: 302px;
    border:1px dotted #cccccc;
    }

#small {
    margin-top: 10px;
    margin-left: 33px;
     
}

#small a img{
    border:none;
     
}


JavaScript
$(document).ready(function(){
$('#small a').click(function(eventObject){
   $('#big img').hide().attr('src',$(this).attr('href')); 
   $('#big img').load(function(){
        $(this).fadeIn(2000);
    });
   eventObject.preventDefault();
});
});
  • Вопрос задан
  • 659 просмотров
Решения вопроса 1
Decadal
@Decadal
https://jsfiddle.net/0mn1L72m/

Всё нормально работает. Скорее всего, у вас в другой части JavaScript есть ошибка, которая не позволяет выполнить данный фрагмент кода, и вас кидает по ссылке как обычно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы