2017-04-20 26 views
0
一個單獨的頁面

一個功能我不整肯定,這是可能的,但這裏是我期待在做的事情。執行從

我有按鈕的列表,按下時,修改它們連接到一個數據庫,(例如,點擊按鈕1將增加10點到播放器1的比分)

我尋找一起做,是調用一個生活在一個單獨的頁面上的JavaScript函數,這是一種視覺確認,點數被添加到玩家1的賬戶中。

我爲什麼要組織像這樣?

我正在那裏我建立了一系列的網絡視圖中顯示的統計和信息抽搐通道。我希望控制觀衆從一個頁面看到的內容,並將結果顯示在不同的頁面上。

這是我到目前爲止有:

HTML(管理頁面):

<button class="addPoints" data-id="player1" data-name="Player 1">Player 1</button> 

JS(管理頁面):

$(".addPoints").on('click', function(){ 
var $id = $(this).data('id'); 
var $name = $(this).data('name'); 
//AJAX MAGIC TO INSERT POINTS INTO DATABASE SO I CAN KEEP SCORE// 
tallyPopup($id, $name); 
}); 

HTML(顯示頁):

<div class="displayScreen"></div> 

JS(顯示頁):

function tallyPopup(member, name){ 
$('.displayScreen').append(<div class='tallyPopup' id='"+member+"'><div class='portrait' id='"+member+"'></div><span class='name'>"+name+"</span><span class='score'>+10</span></div>); 
$('.tallyPopup').animate({ 
opacity: 1 
}, 3000, function(){ 
$(this).remove(); 
}); 
} 

我知道我有什麼不連接的兩頁,因爲我還沒有就如何做到第一條線索是,如果它甚至有可能。或者,有沒有辦法讓Display HTML檢查數據庫是否已經更新,然後運行tallyPopup函數?

在此先感謝。

+0

看看[這個問題](http://stackoverflow.com/questions/9106516/push-notifications-from-server-to-user-with-php-javascript) – Draco18s

回答

0

你不能調用其他客戶端(包括您自己的客戶端)上運行自己的網站上的功能。

要不斷檢查顯示頁面上的點,使用直到調用clearInterval(intv),你也許不會那麼做,因爲你可能希望可以永遠這樣繼續運行var intv = setInterval(function() {}, nMilliseconds)重複運行的功能,但也許只有每分鐘(nMilliseconds = 60000)。

setInterval(function() { $.get('/point-count').then(tallyPopup) }, 60000) 

tallyPopup將接收來自AJAX響應的數據參數。

當然在管理方面,你必須在該行通過AJAX來更新分額填報,無論是通過PUT,POST或補丁。我會考慮使用PATCH作爲語義問題。

另外考慮存儲$(this)var $this = $(this))的返回值,而不是多次調用它,使用承諾,使用CSS動畫而不是$.animate(這些表現要好得多)。考慮使元素不透明,然後可見(可能在屏幕不可見時),而不是使用$.remove(也是性能改進)。