問題タブ [offsetwidth]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - テーブルの列幅のマッチング
更新:解決策が見つかりました
更新:提案された回答はありません。私の側で解決策が見つかりませんでした。誰か?
javascriptを使用して、2つの別々のテーブルの列の幅を一致させています(これを使用して、スクロール可能なスティッキーヘッダーテーブルを作成します。データがすべて表示されている(オーバーフローなし)場合、メソッドは正常に機能します。ただし、テーブルがオーバーフローした場合は、テーブルの列が整列していません。offsetWidthsがまだ同じ数値を返していることを示すデバッグストリームがあります。これが発生している理由について何かアイデアはありますか?
メインHTML:
Javascriptメソッド:
CSS:
デバッグプリント:
html - HTML-コンテンツを入力する前にdivの幅と高さを取得するには
デバイスまたはブラウザーの解像度に基づいて、shareddivに収まるパネルの数を決定できるように、コンテンツを入力する前に、shareddivの実際の幅と高さを取得する必要があります。
アラートは、コード内のさまざまな場所でさまざまな値を返します。
firefox - ffのoffsetWidthは、実際の要素の幅とは異なります
どういうわけか、FirefoxとChromeのoffsetWidthで異なる結果が得られます。シンプルなボタンを手に入れました
これはoffsetWidthが正確に89ピクセルです。Chromeはそう言っており、Photoshopもそう言っています。Firefoxでも89ピクセルの要素として表示されますが、FirebugsにoffsetWidth
よると90ピクセルであるとのことです。jQueryは、Firefoxforで90ピクセルも取得しouterWidth()
ます。幅を使用して計算するので、正確に正しくする必要があります。
- 残念ながら、まだ画像を投稿することは許可されていません
Picture1
Picture2
offsetWidth
Firefoxのプロパティが間違っているのはなぜですか?
コメントから編集:
カスタムフォントを使用しています。フォントを無効にすると、問題が解決します。ただし、FF + Linux、FF + Win7、およびChrome + Win7でカスタムフォントを使用してこれをテストします。Windows7のFirefoxは、表示される幅が計算されたoffsetWidthと異なる唯一のブラウザーです。Linuxではボタンのフォントレンダリングにより91ピクセルですが、表示される幅は同じであるため、計算に問題はありません。今のところ、私はおそらくそれと一緒に暮らす必要があります
css - UIObject.getOffsetWidth を呼び出す適切なタイミングはいつですか?
gwt で uiobject のオフセット幅を取得したい。ただし、この値は次のように異なります。
- uiobject がアタッチされているかどうか?
- 相対的なcssがどこにロードされたかどうか?
- uiobject のサイズは onload コールバックで変更される場合があります。
- ...
したがって、特にFlowPanel、Label、InlineLabelなどのこの値を取得したい場合は複雑になります。サイズは動的に計算されます。
私の質問:いつ、またはどのようにオフセット幅を適切に取得するのですか?
performance - テーブル列の最長セルを効率的に測定する方法
固定幅の HTML テーブル セルで最も幅の広いコンテンツを特定しようとしています。現在、外部サイザー DIV を使用しています。
このコードで
テーブルに100行程度しかない場合でも、機能しますが、非常に遅くなります。主な犯罪者は を計算しているようですoffsetWidth
。これを達成するためのより効率的な方法はありますか?
そのテーブル列のサイズを最も広いデータのサイズに変更する必要があるため、これを行っています。他に良い方法があれば、それも素晴らしいでしょう。
(より正確には、ASP.NET の Infragistics WebHierarchicalDataGrid コントロールで「列の自動サイズ変更」機能を実装しようとしています -Max(Header Width, Data Width)
固定のヘッダー/ページャー位置を維持しながら、列は最も広い幅を取る必要があります)。
ありがとう!
jquery - スクロール可能なリストで部分的に隠された div の幅を取得します (デモが利用可能)?
これは私を夢中にさせています...
ファイル名のリストがあり、垂直方向にスクロールしたいだけなので、ファイル名 (=div) がリスト自体よりも広い場合は、完全な div を「引き出して」名前を表示したいと考えています。
この i アクションはこちらで確認できます: http://j25.wasen.net/index.php/news
ホバー時に div のクローンを作成し、それを本文に追加して、非常に高い zIndex を設定することで、これを解決しました。つまり、クローン div はすべての上に表示されますが、元の div と同じ位置に表示されます。
理由はよくわかりませんが、何らかの理由で、リストよりも幅が小さい div が間違った位置に表示されます。ただし、幅を超えるアイテムは適切な場所に表示されます。
名前を含む div がリストの幅を超えているかどうかを確認してから、クローンを作成することを考えました。これは、クローンが必要な場合でもあります。
ただし、divの真の幅を取得できません。キャッチする幅が表示されるように、Console.log ステートメントを追加しました。
リスト内のdiv(部分的に非表示)ではなく、本体(=クローン)に添付されたdivの幅を確認します...
div の実際の幅を取得するにはどうすればよいですか?
ありがとう!
android - AndroidのsetWidthでエラーが発生しました
私の問題は、TEXTVIEW(入力テキスト)の幅を変更したいということです。エミュレーターでは、そのコードは正常に機能しますが、モバイルでアプリを操作しようとするとクラッシュします。
私の答えは次のとおりです。.setWidthを変更しようとするとアプリがクラッシュするのはなぜですか?どうすれば問題を解決できますか?
たくさんの感謝。
編集:TextViewからEditTextへ
javascript - firefox offsetWidth は何も報告しません。
JavaScriptを使用して動的なサイズ変更を試みています。この一部として、コンテナーの現在のサイズを報告する必要があります。私はこれを行う関数を書きました(以下)。それはクロムでうまく機能します...しかし、Firefoxでは幅が報告されません。私はoffsetWidthメソッドについて読んだことがあり、理論的にはFirefoxで動作するはずです。
このレポートはすべて「NaN」です。
実際のページにはさらに多くの機能がありますが、すべての追加コードはテストのためにコメントアウトされています...これは、レポートを実行する実際の行です。
私は何かを見逃していましたか、それとも JS と DOM を使用して幅を報告するよりスマートな方法はありますか? div の幅を取得する別の方法はありますか?
ありがとう。