Функция Mouseleave срабатывает без необходимости?

Я работаю над событием jQuery mouseleave здесь. У меня есть ckeditor. Мне нужно показать ckeditor, когда я ввожу мышь, и мне нужно сработать, когда мышь уйдет отсюда. цвет, который он запускает, означает, что цвета открываются в каком-то div, я так думаю, но мне нужно запустить его один раз мышью или div, пожалуйста, проверьте его один раз

Вот мой код:

<script type="text/javascript">
    $(document).ready(function () {

        $('#btndiv1').hide();

        $('#btndiv').hover(function () {
            $('#btndiv1').show();
        });
        });
</script>
<script type="text/javascript">
    $(document).ready(function () {
    var editor = CKEDITOR.editor.replace('editor1');
    $('#btndiv').mouseleave(function (event) {
        $('#btndiv1').hide("slow");
            alert(1);
            var value = editor.getData();
            alert(value);
            $('#btndiv').append(value);

        });
    });

</script>

а вот мой див

<h4>design your own text</h4>
<div id="btndiv" >
    <div id="btndiv1" style="height:auto;width:auto; border:solid 1px;">
    <textarea  rows="10"   id="editor1" "></textarea>
    <p id="text" ></p>
        </div>
</div>

Здесь он работает. У меня есть только проблема: когда он открывается для применения какого-либо цвета или для заголовка, он открывает sode div k, его срабатывание означает, что он становится скрытым.

Но мне нужно скрыть это, как только мышь выйдет из div, любая помощь будет оценена

заранее спасибо


person Sadda-shutu    schedule 29.10.2012    source источник
comment
Вы можете показать это на скрипке?   -  person Pulkit Mittal    schedule 29.10.2012
comment
я не могу показать, что я jsfiddle, потому что ckeditor имеет ссылочный код, как я могу его показать   -  person Sadda-shutu    schedule 29.10.2012


Ответы (1)


Попробуйте использовать это:

$('#btndiv1').mouseleave(function () {
    $('#btndiv1').hide("slow");
});

что у вас есть в вашем коде:

$('#btndiv').mouseleave(function (event) {
    $('#btndiv1').hide("slow");
        alert(1);
        var value = editor.getData();
        alert(value);
        $('#btndiv').append(value);

    });
$('#btndiv') //which is holding the ckeditor textarea

вам нужно захватить родителя, который держит div и текстовую область.

person Jai    schedule 29.10.2012
comment
бесполезно, на самом деле это работает, когда я получил ckeditor, я написал некоторый код, и когда я применяю какой-то цвет, он скрывается, но мне нужно скрыть его, как только он выйдет из div - person Sadda-shutu; 29.10.2012
comment
посмотрите в своем коде, что вы используете это: $('#btndiv').mouseleave(function (event) { $('#btndiv1').hide(slow); alert(1); var value = editor.getData();alert(value);$('#btndiv').append(value);}); - person Jai; 29.10.2012
comment
тогда я думаю, вам нужно зафиксировать идентификатор div, который имеет цветовую палитру, и при наведении на эту палитру вы можете показать нужный вам div. - person Jai; 29.10.2012