2
我在我的網頁遊戲上實現庫存機制,我想稍微複雜一點。取消功能時被點擊目標div其他地方
爲了打開門,你需要找到boltcutters。當你找到它時,你需要點擊boltcutters,然後在一個鏈上打破它,這就是我工作的部分。 但我想實現某種功能,如果點擊boltcutters後我點擊任何地方,但在我要運行的功能取消鏈功能(變色)和顯示產業鏈「不能使用在這裏」味精爲例。
因此,在短期,我需要找到一個解決方案,(僞):
If(boltcutters_clicked){
if(clicked_on_chain){
openthedoor()}
else {
cancelBoltcutters()}
這裏是我目前擁有的部分代碼,如果那幫助:
//鏈力學
var boltcutters_used = false;
document.getElementById('item_boltcutters').onmousedown = function(){
boltcutters_used = true;
document.getElementById('item_boltcutters').style.color = "red";
document.getElementById('item_boltcutters').style.border = "1px solid red";
}
var boltcutters_found = false;
document.getElementById("chain").onmousedown = function(){
if(boltcutters_used){
alert('you open the door');
} else if(!boltcutters_found){
alert("I need to find something to break this chain...")
} else {
alert("Boltcutters could do the trick")
}
}
由於下面提到我想出了以下解決方案的理念:
var last_clicked = null;
var test=0;
window.onclick = function (e) {
last_clicked = e.target;
if(boltcutters_used == true){
test++;
}
if(boltcutters_used == true && last_clicked !== document.getElementById("chain") && test >1){
alert("Can't use it here");
boltcutters_used = false;
test=0;
}
}
而且它的工作原理:)
謝謝,以瞭解它,我需要研究它一點點,因爲我只是在JS初學者,我會讓你知道是否奏效! –
好吧,我研究它,瞭解它,我想,雖然它是有用的,我也會肯定使用該功能後它不解決我的問題,因爲我仍然無法達到我的目標,那就是當比其他地方點擊顯示「不能在這裏使用它」在鏈上。我需要類似「if next_clicked!= chain」等等。 –
解決了它,感謝您的想法,但如果您想查看,請修改主帖子,謝謝! –