0

showPreviewFacebook が URL のプレビューを表示するのと同じように、サイトに URL を入力するためのオプションがあります。

ユーザーが URL を入力すると、次の条件が検証されます。

$('#text').keyup(function(e) {
            allowPosting = true;
    if ((e.which === 13 || e.which === 32 || e.which === 17) && trim($(this).val()) !== "") 
}

キーコード:

13 - Enter
45 - Insert
17 - control

ユーザーが URL をコピーして貼り付ける、プレビューから URL を選択して Enter キーを押すと、関数が呼び出されるようになりました。

私が欲しいもの:

ユーザーが URL を入力すると、ユーザーが Enter キーを押したり、URL をコピーして貼り付けたりしなくても、プレビューが表示されます。

私は何をすべきか?

4

3 に答える 3

1

Enter だけでなく、すべてのキーアップの後に .val() を確認し、それが URL の場合は残りを行います

于 2013-10-28T18:09:59.530 に答える
1

これがあなたのコードです、これはあなたが書いたすべてを行います:

 $('#text').keyup(function(e) {
    allowPosting = true;
    if (/(^|\s)((http:\/\/|https:\/\/)[a-zA-Z0-9!*'();:@&=+$,\/?#[\]\-_.~]+)/.test($("#text").val()) && trim($(this).val()) !== "")
    {
        // DO STUFF
    }
}); 

入力がリンクかどうかもチェックするので、ユーザーは「asdf」ではなく「 http://google.com/ 」と入力できます。

于 2013-10-28T18:11:13.137 に答える
1

keyup の代わりに変更してみてください:

$('#text').change(function(){...});
于 2013-10-28T18:11:44.377 に答える