事先传播事件

时间:2014-07-25 06:42:50

标签: jquery events dom javascript-events event-handling

我正在尝试使ajax搜索框工作,但问题是INPUT字段上的focusout事件是在我对响应DIV的锚元素进行的click事件之前触发的。焦点代码清空/隐藏(两种情况)响应DIV,因此点击不被触发。在焦点输出/任何变通方法之前,是否可以在开始/触发点击时触发焦点事件代码中的传播点击?

HTML -

<div class="search">
    <input type="text" name="searchbox" class="searchbox" placeholder="search.." />
    <div class="search_results">
    </div>
</div>

Searchbox JS -

$('.searchbox').focusin(function(){
    $(this).css('color','#000');
    $(this).animate({
        'width':'300px',
        'font-size':'16px'
    }, 500);
    if($(this).val()){
        $(this).trigger('keyup');
    }
}).focusout(function(){

    //Is a call to propagation possible here?

    $(this).css('color','#aaa');

    $('.search_results').html('').hide();
    //I am using the `on` method for dynamically added elements in response DIV which works when the above line is commented

    $(this).animate({
        'width':'150px',
        'font-size':'15px'
    }, 500);
});

0 个答案:

没有答案