Infowindowでいくつかのスタイルを修正するには、クラス 'gm-style-iw'で要素を選択する必要があります。選択はangularjs指示の内部で行われます。google maps select infowindow angularjs指示文のDOM要素
<div ui-view="full-map" id="full-map" class="mainMap col-xs-6"></div>
ui-view - IWコンテンツのディレクティブを読み込みます。 mapはそのディレクティブ内で初期化されます。
ディレクティブのコントローラの初期化では、クラス 'gm-style-iw'で要素を編集する必要があります。
var iwElem = $document[0].getElementsByClassName("gm-style-iw")
は正しい要素を返します。
にconsole.log(iwElem)結果は次のとおりです。
[]
length: 1
0: div.gm-style-iw
__proto__: HTMLCollection
私はそれの後にこだわっているが。 HTMLCollection
として、これはHTML要素の配列ですが、私は理解しています。 =>私はiwElem[0]
でこれを得ることができる必要があります、iwElem[0]
はundefined
を返します。
はまた、jQueryのセレクタで試してみました:
$('.gm-style-iw')
=>length:0
$('div.gm-style-iw')
=>length:0
'iwElem [0]' yes&noでこの0要素を取得できる必要があります。他の番号を試したり、コンソールでそのコレクションを出力したり、その中で見つかるものを確認したりできます。 gmaps info-window設定オブジェクトにルールを注入する方が簡単ではないでしょうか? – admcfajn
あなたのページは何フレームありますか?これはフレームの問題のように見えます。あなたは一度devツールから別のフレームでget elemetゲッターを試すことができます。また、フレームは同じかクロス起点ですか? – gauravmuk
投稿に '$ document [0] .getElementsByClassName(" gm-style-iw ")'の出力が含まれていました。 gmaps info-window configにルールを注入する方が簡単ではないでしょうか?特に、いくつかのデフォルトクラスを削除することでやりたいことが必要なエディションです。 – user1935987