2017-02-19 80 views
-2

嘿傢伙!需要JavaScript語句解釋('this'and'event')

今天好吧,我要問的是,特定的JavaScript語句thisevent如何以外行人的方式工作。

用你自己的話說;請描述這兩條語句以及它們如何用於特定的html組件。

我只依稀知道event聲明是如何工作的。從我所能理解的是,它只是陳述一個事件,但是一旦事件通過,它將丟失所有數據並重新啓動,以便在下次使用它時,它可以重新開始,並且最近使用它的事件不會記住它自己的過去。對我來說,它基本上是一隻被推過馬路的雞,但是當它完成時,它突然被運回到它最初開始的地方;無法記住任何東西。不管是那個還是來自Moana的雞Heihei。

但是,我的理解只是模糊不清,因爲我在event聲明中發現的所有內容都太複雜或太模糊。如果任何人都可以加入,這將是非常好的。

然後是this聲明。 我完全不明白這一點。 那麼......我該如何使用它來獲取其包含的HTML元素的屬性,如id,name,value等。

例如:

<input type="button" id="demo" name="dono" value="dem" onclick="caller(event)"/> 
    <input type="button" id="demo2" name="dono2" value="dem2" onclick="caller(event)"/> 

<script> 
    function caller(event){ 
    //How can you get the id, name, and value of the element that called this event? 
    } 
</script> 

如果任何人有一個解釋,請分享。 不要模糊你的答案。 是的,只是把一個鏈接沒有解釋被認爲是一個模糊的答案。

這是一個對話式的問題,我希望有人會回答這個問題。

+0

好吧,我知道我是愚蠢的JavaScript,但,這只是因爲我只是一個初學者。我在這個語言的深層方面並沒有真正的經驗,所以他們對我們有憐憫。而且「layman」這個詞的意思是newb。 – Arkonsol

回答

1

這樣:

<input type="button" id="demo" name="dono" value="dem" onclick="caller(this)"/> 
    <input type="button" id="demo2" name="dono2" value="dem2" onclick="caller(this)"/> 

<script> 
    function caller(event){ 
    console.log(event.target.id); 
    console.log(event.name); 
    console.log(event.value); 
    } 
</script> 
+0

它可以是'this.id'或'event.target.id' – slebetman

+0

或IE 8及以下'event.srcElement.id' – slebetman

+0

你沒錯,改變了。感謝 –