当用户使用jquery聚焦到textarea时显示按钮

时间:2013-10-15 03:12:29

标签: javascript jquery

当用户将cursur带入文本框时,我希望文本框可见。

HTML:

<input type="text" id="text" name="sent" contenteditable="true"  style=" text-align: left; height: 30px; width:512px; " placeholder="Enter URL ..."/></input>
<button id="b1" style="display:none" > Get Sentiment </button>

这是我的JS:

$(document).ready( function() {
    $("#text").bind("keypress", function( e ) {
        document.getElementById("b1").style.display = "block";
    });
});

的jsfiddle:

http://jsfiddle.net/karimkhan/wJcNq/

代码是按照我的目的而不是得到结果

4 个答案:

答案 0 :(得分:2)

尝试这个新小提琴:http://jsfiddle.net/dHEGB/

$(document).ready( function() {
    $("#text").on("focus", function( e ) {
        $('#b1').show();
    });

    $("#text").on("blur", function( e ) {
        $('#b1').hide();
    });
});

确保您已在HEAD中添加了JQuery。

答案 1 :(得分:1)

您正在使用keypress事件,因此在用户实际键入密钥之前不会显示该事件。您想要focus事件:

$(document).ready( function() {
    $("#text").bind("focus", function( e ) {
        document.getElementById("b1").style.display = "block";
    });
});

答案 2 :(得分:1)

$(function() { // document ready
    $('input#text').on('keyup.showButton', function() { // creating keyup event with namespace
        $('button#b1').filter(':hidden').fadeIn(); // if button is hidden - show it
    });
});

答案 3 :(得分:1)

你包含了jQuery库吗?我没有在jsFiddle中看到只是检查,这可能会导致选择器出现问题..

只需包含库,您的代码就完美了。我测试了它..