後で復元するために、要素のプロパティの値(、、 ...)をdisplay
保存none
する必要があります。プロパティがcssスタイルシートから設定されている場合は、空の文字列を返します。計算値を取得するにはどうすればよいですか?block
inline
element.style.display
display
解決策は、jQueryまたは別のライブラリを使用することができます。
後で復元するために、要素のプロパティの値(、、 ...)をdisplay
保存none
する必要があります。プロパティがcssスタイルシートから設定されている場合は、空の文字列を返します。計算値を取得するにはどうすればよいですか?block
inline
element.style.display
display
解決策は、jQueryまたは別のライブラリを使用することができます。
var myDisplay = $('#YourControl').css('display');
これにより、uが保存できる表示属性が得られます
この場合、彼らが言ったように:displayプロパティは自動的に保存されます。
var myDisplay = $('#YourControl').css('display');
要素に追加のデータを保存する場合は、
$("#element").data('foo', 52);
この要素に保存されているデータを復元するには
var mystoredData = $("#element").data('foo');
jQueryがない場合に備えてgetComputedStyle
、表示プロパティ値の検出に使用できます。
window.getComputedStyle(YOUR_DOM_ELEMENT).cssText.split('display: ')[1].split(';')[0]
jQueryをお持ちの場合は.css('display')
、他の人が言っているように使用してください。
表示プロパティを各要素に保存できます.data()
$('.box').on('click',function(){
displayProp = $(this).css('display'); // read the .css display property
$(this).data('storedDisplayProp', displayProp); // store it into element data
$(this).css({display:'none'}); // modify the .css display
});
そしてそれを次のように取得します:
$('#undo').on('click',function(){
$('.box').each(function(){
$(this).css({display: $(this).data('storedDisplayProp') }); // read stored data and reset
});
});
$("#myElemId").css("display");