私は、いくつかの要素div
を含むで構成される html 構造に取り組んでいます。article
ボタンを押すと、一部の jquery がサーバーから新しいarticle
要素のコンテンツを取得し、これをテンプレートに置き換えて、div
. 別の関数は、クラスを持つすべての要素を削除しdeletenext
、選択された最上位の要素を取り、それにクラスをarticle:first
追加しますdeletenext
。このクラスは css に隠されていますが、復元できます。
これらはキープレスに関連付けられています。
セットアップは AJAX 部分がなくても完全に機能します。コンソールから関数を呼び出すか、キーを押して要素をスクロールできます。AJAX セクションだけを含めると、それも完全に機能します。
しかしfunc1();func2
、コンソールまたはキープレスのいずれかから呼び出された as の両方を使用すると、問題が発生します. 同じ実行ではない限り、どちらかの関数を単独で、または代わりにコンソールから呼び出すことは正常に機能します。順序は問題ではないようですので、同期の問題ではないようです(scrollDown
すべて同期関数であり、問題ではありません)。
以下に示す関連コード。
function scrollDown(callbackck) {
$('article.deletenext:first').remove();
$('.content article:first').addClass("deletenext");
};
function scrollUp() {
$('.content article.deletenext').removeClass("deletenext");
}
function loadNext() {
$.getJSON('test.json', function (data) {
$('.content').append("<article><h1>" + data.title + "</h1><section class='articlecontent'>" + data.content + "<section></article>");
});
};
$(document).bind('keydown', function(e) {
if (e.keyCode == 75) {
scrollUp();
}
else if (e.keyCode == 74) {
scrollDown();
loadNext();
};
return false;
});