2016-05-16 61 views

回答

4

這可能會幫助你 -

<button> 
    click 
    </button> 

<script> 
     var clickCounter=0; 
     var s=0; 
     alert(s); 
     $('button').on('click',function(){ 
      var s=10; 
      alert(s); 
      }); 
</script> 

最初,變量將存儲值爲0,單擊vutton後變量分配值10.

+0

這對我工作,謝謝。儘管它完全不是我想要的,因爲var s = 10;裏面的函數需要沒有'var'。 – JohnMichael

1

您正在if和else範圍內創建一個變量S. 如果創建一個變種S的外面,其他並分配之後

或者你也可以做這樣的:

var s = 0;  
    $('button').observe('click', function() { 
     s = 10; 
    }); 

這樣,你只有點擊後分配10秒。你以前的代碼永遠不會設置任何東西到10

1

你到底想要達到什麼目的?爲什麼不在點擊事件中設置s = 10?就像這樣:

var s = 0; 

$('button').click(function() { 
    s = 10; 
    console.log(s); 
}); 

console.log(s); 

或者,如果你想觀察值改變,嘗試這樣的事情:

$('button').click(function() { 
    object.s = 10; 
}); 

var object = {}; 
Object.defineProperty(object, 's', { 
    get: function() { 
    return this.value; 
    }, 
    set: function(newValue) { 
    alert(newValue); 
    this.value = newValue; 
    } 
}); 

object.s = 0;