我使用原型1.5。你能告訴我,我怎麼能隱藏/顯示具有相同名稱或類的div標籤。隱藏多個具有相同名稱或類別的標記
Element.hide('indicate')
但是,上面的行只能滿足只隱藏第一個元素。 「表示」是id。
我使用原型1.5。你能告訴我,我怎麼能隱藏/顯示具有相同名稱或類的div標籤。隱藏多個具有相同名稱或類別的標記
Element.hide('indicate')
但是,上面的行只能滿足只隱藏第一個元素。 「表示」是id。
HTML中不支持兩個元素具有相同的id,所以JavaScript中沒有方法來處理它。不管你使用什麼框架。
hi @LHMathies,我修改了這個問題。請告訴解決方案。 – 2011-05-17 10:53:56
謝謝。但我看到很多人已經給出了有效的答案。 – LHMathies 2011-05-17 11:16:43
ID必須是唯一的。改爲選擇類。
$$('div.indicate').hide();
或與它的名稱屬性
$$('div[name=indicate]').hide();
這不起作用。 – 2011-05-17 11:06:39
使用clockworkgeek的每種方法。 – DanielB 2011-05-17 11:09:42
感謝您的建議。函數式編程FTW! – clockworkgeek 2011-05-17 11:13:04
原型提供了$$()
功能,你可以用它來查詢任何CSS選擇器。
所以,如果你有一個類多個項目,您可以查詢他們是這樣的:
$$('.indicate');
見原型手冊:http://www.prototypejs.org/api/utility/dollar-dollar
順便說一句,因爲你使用原型1.5 ,我也可以提到它也給你一個.getElementsByClassName()
函數。然而,由於其功能已被$$()
所涵蓋,並且爲了避免混淆,因爲現代瀏覽器實現具有相同名稱但語法不同的本機功能,所以現在已經在較新版本中棄用了它。
所以不要使用它,但爲了完整起見,這裏是手動鏈接:http://www.prototypejs.org/api/element/getElementsByClassName
它不工作。我嘗試了「$$('。'''')。hide();」,注意到了。當試圖喜歡時,$$('.lind'),每個函數(obj){obj.hide();}。 } } 它顯示錯誤。 – 2011-05-17 11:08:02
@Mr。黑色 - 我已經放棄了關於如何使用'hide'的答案,因爲我把Prototype和JQuery混淆了。我已經將手冊頁鏈接留在那裏,因爲它是一個有用的鏈接。看看其他答案,我會說@ clockworkgeek的答案看起來應該是好的。 – Spudley 2011-05-17 11:13:15
正如指出的那樣,需要對$$
功能。它返回一個數組,所以你需要invoke隱藏所有項目。
$$('.indicate').invoke('hide');
或者,對於獎金炫耀點,則可以直接使用該功能的一個目的:
var hideFunc = Element.hide;
$$('.indicate').each(hideFunc);
該技術裝置的優點可以很容易地交換功能爲另一個,例如a Scriptaculous effect 。
hideFunc = Effect.SwitchOff;
ID必須是唯一的! – DanielB 2011-05-17 10:50:04
是的,我知道。好吧告訴我,如何隱藏標籤名稱或類別。 – 2011-05-17 10:51:21