入力ボックスに URL (例: http://kotaku.com/some-article
)が含まれている場合paste()
& keyup()
my CURL は、その特定の Web サイトのタイトル、説明、および画像を取得し、これを my に挿入します。#content
ポスト - AJAX
$("input").on({
'paste': function() {
var content;
if (...) {
$.post("curlfetch.php?url="+ url, {
}, function(response){
content = response;
$('#content').html(response);
},
'keyup': function() {
if (...) {
$('#content').html(content);
}
});
返されるデータ
<div id="image"><img src ... /> </div>
<div id="title"> some title... </div>
<div id="desc"> some text... </div>
困っているのはkeyup()
イベント中です。
リンクを貼り付けた後に何かを入力すると、画像が繰り返しダウンロードされます。
そのため、paste()
イベント時にこの量のトランザクションを取得します。どちらが正しい。
しかし、何かを入力した後、またはkeyup()
イベントをアクティブにするものを入力すると、画像が再度ダウンロードされます。リンクの後に入力を続けると、ダウンロードが続きます..
これは画像にのみ当てはまります。タイトル、説明にこの問題はないようです。
したがって、画像の div を削除し、タイトル、desc を残した場合
<!-- <div id="image"><img src ... /> </div> -->
<div id="title"> some title... </div>
<div id="desc"> some text... </div>
それは正常に動作します。
keyup()
イベントごとに画像を繰り返しダウンロードするだけです。これを防ぐにはどうすればよいですか、またはトラブルシューティングに適切に取り組むにはどうすればよいですか。
注: はvar content;
、CURL によって返されるデータを格納するために使用され、keyup()
イベントでこれにアクセスするだけです。だから私は$post
カールするために別のものを要求する必要はありません.
私の説明が少し曖昧で申し訳ありません。