ユーザーが上ボタンまたは下ボタンを押して要素のフォントのサイズを変更できるフォームがあります。フォームをリセットするとき、phpスクリプトに送信するために、「デフォルト」のフォントサイズを非表示フィールドに戻す必要があります。では、jqueryによって変更されたものではなく、実際にcssスタイルシートに入力されたcssフォントサイズを取得するにはどうすればよいですか?
ありがとう、トッド
最も簡単な方法は、変更する前に元のフォントサイズを保存することです。
var originalFontSize = $myElement.css('font-size');
次に、フォームをリセットするためのコードで:
$myHiddenElement.attr('value', originalFontSize);
Javascript(ここで説明)を使用して実際のスタイルシート内の定義にアクセスできますが、要素に関連する定義がどこにあるかについてあらゆる種類の仮定を行う必要があり、ブラウザー固有のオーバーライドなどは考慮されません。要素を変更する前に、その要素の状態を取得する方がはるかに簡単です。
次のように、cssでデフォルトのフォントサイズを定義できます。
#myelement {
font-size: 12;
}
次に、javascriptを使用してこの値をローカルでオーバーライドできます
var element = document.getElementById('myelement');
element.style.fontSize = new_font_size; // local values override the value from the stylesheet.
次に、デフォルトに設定する場合
var element = document.getElementById('myelement');
element.style.fontSize = null; // now it reverts back to using the value defined in the stylesheet
font-sizeを変更する前に、JS変数にデフォルト値を設定する必要があります。
var defaultFontSize = 20;
そして、それを使用してリセットを行います。