私はdivを持っています。その div は iframe 内に存在します。そのdivには幅があります。jQuery経由でこの幅を取得したいと思います。そうすることでの私の冒険のいくつかが添付されています。お楽しみください!
http://i.imgur.com/AXdfU61.jpg
http://i.imgur.com/Y9MB6Sg.jpg
編集- $ で行を開始すると、コンソールがエラーをスローするのはなぜですか?
EDIT 2 - 質問を必要最小限の基本に単純化しました。
私はdivを持っています。その div は iframe 内に存在します。そのdivには幅があります。jQuery経由でこの幅を取得したいと思います。そうすることでの私の冒険のいくつかが添付されています。お楽しみください!
http://i.imgur.com/AXdfU61.jpg
http://i.imgur.com/Y9MB6Sg.jpg
編集- $ で行を開始すると、コンソールがエラーをスローするのはなぜですか?
EDIT 2 - 質問を必要最小限の基本に単純化しました。
jquery では、次のようなことができます。
$("#iframeId").contents().find('#divId').width();
iframe には ID がないため、ID を変更するか、他の方法で見つけます。 $('iframe') を使用して、ドキュメント内のすべての iframe を一覧表示できます。$('.span9') を使用する場合の試行に関連して、これはこのクラスのすべての要素を見つけるため、要素を取得する別の方法も見つける必要があります。
使用$("#IDofDIV").width();
サイズを変更/幅を取得する要素には、クラスの代わりに ID を使用する必要があります。クラスには多くの要素が含まれており、同じクラスの要素が何百もある場合もあります。要素のグループではなく、どの要素を指定する必要があります。
そのため、他にも多くの方法がありますが、ID を使用するのが最も簡単な方法です。
また、iFrame を使用しているため、コンソールからスクリプトを実行するだけで問題が発生する可能性があります。@PlantTheIdea がこれについて説明している質問の下の最初のコメントを参照してください。
私はそれを解決しました。この問題の回避策は機能していますが、私のサイトの jQuery には他にもいくつかの問題がありました。つまり、コンソールで $ が機能しません。jQuery を参照していることはわかっていましたが、$ は有効なオブジェクトではありませんでした。
jQuery が非競合モードで実行されている場合、標準的な使用例では $ を使用できないことが判明しました。代わりに、次のようにドキュメント準備完了関数を渡します。
jQuery(document).ready(function ($){
現在は有効なオブジェクトであり、通常どおり使用できます。これにより、jQuery が非競合モードで実行され、$ にアクセスできるようになります。
これについては、こちらをご覧ください: http://codex.wordpress.org/Function_Reference/wp_enqueue_script
(jQuery noConflict ラッパーセクション)
これが誰かを助けることを願っています!