domA.style.display = "none"; domA.style.display="ブロック;
ライブラリにはそのような関数は見つかりませんでしたが、どこかにあるはずです。
domA.style.display = "none"; domA.style.display="ブロック;
ライブラリにはそのような関数は見つかりませんでしたが、どこかにあるはずです。
<html>
<head>
<script src="http://closure-library.googlecode.com/svn/trunk/closure/goog/base.js" type="text/javascript"></script>
<script language="JavaScript">
goog.require('goog.style');
</script>
</head>
<body>
<div id="myElement">test</div>
</body>
</html>
<script>
goog.style.setStyle(goog.dom.$("myElement"), "display", "none");
// or
goog.style.showElement(goog.dom.$("myElement"), false);
</script>
別のオプションは
var elA = goog.dom.getElementByClass('sdf');
goog.style.showElement(elA、true)//要素を表示
goog.style.showElement(elA、false)//要素を非表示
ここにある最近の公式ドキュメントによると、次のことが推奨されていsetStyle
ます。
要素にスタイル値を設定します。...可能であれば、ネイティブAPIを使用します。elem.style.propertyKey='value'または(古いスタイルを削除しても問題ない場合)elem.style.cssText ='property1:value1; property2:value2'。
goog.dom.getElement('myElement').style.display = 'block';
これはあなたの質問のように示唆するでしょう。
showElement
を使用する場合、2番目の引数をに設定するtrue
と、要素がそのに戻ることに注意してくださいdefault style
。それが言うように:
要素をデフォルトのスタイルでレンダリングする場合はtrue、要素のレンダリングを無効にする場合はfalse。
ただし、これが意味するのは、display: none
CSSで設定した場合true
でも、CSSのデフォルトのスタイルは要素を非表示にするため、設定では要素が表示されないということです。これは、たとえばjQueryの場合とは異なります。
切り替えるには、次のようにします。
var el_style = goog.dom.getElement('myElement').style;
el_style.display = (el_style.display === "none" ? "block" : "none");