выпадающая панель возвращается вверх при втором нажатии (во входном окне), потому что она находится внутри анимированного div - jquery - PullRequest
0 голосов
/ 25 января 2012

на данный момент у меня есть

            <div id="beau">

                <div>
                <input type="text" id="lun" name="lun" size="24" onclick="this.value='';" onfocus="this.select()" onblur="this.value=!this.value?'User Name':this.value;" value="User Name"             
                style="position:absolute; background-color:transparent; border-style:none; margin-top:53px; margin-left:35px;" />
                </div>

                <img src="_images/Rollovers/drop bar export.png" alt="extras" width="877" height="160" border="0" />

            </div> 


        <script type='text/javascript'>

    $("#beau").toggle(function(){
        $(this).stop().animate({marginTop: 738}, "fast");
    }, function() {
        $(this).stop().animate({marginTop: 680}, "fast");
    });

        </script>

и проблема в том, что я нажму на "beau" div, чтобы раскрыть "поле ввода" и изображение (оба внутри div "beau"), и это все работает нормально, но когда я нажимаю в «поле ввода» для ввода текста, панель возврата снова поднимается вверх. я знаю, почему это происходит, и я попробовал несколько вещей, чтобы заставить это работать, но я просто не могу получить это. спасибо за вашу помощь, ребята:)

1 Ответ

0 голосов
/ 25 января 2012

Один из вариантов - добавить обработчик для ввода, который останавливает распространение в div:

    $('#lun').click(function(e){
       e.stopPropagation(); 
    });
...