2009-07-31 9 views
1

ユーザーがgoogle-mapsマップの位置をクリックするとjavascript(window.open)でリンクを開く必要があります。JavaScriptのリンクのエミュレート

リンクをクリックしたとき、クリックしたときにどこで終了するのかをユーザーに理解させるにはどうすればよいですか?

ユーザーがマップの位置にカーソルを合わせている間、Firefoxの通常のリンクと同様に、その位置のURLをステータスバーに表示する必要があります。

どうすればよいですか?

あなたはDIVを作成することができます(幅:

おかげ

+1

通常のリンクを使用できない理由はありますか?それらを新しいウィンドウで開くことができ、それらをマップ上に配置することができます。 他の要素をリンクのように動作させることができますが、リンクを使用することができれば多くの問題が発生します。 – Annan

答えて

0

[OK]をdontomaso

は、私は、Googleマップは、私はあなたの一般的なヘルプを提供しようとするので、JSコードを管理する方法について多くを知りませんあなたが望む矩形領域の高さ)を計算し、マップに必要な絶対座標で背景色を透明にして置きます。

これはonmouseoverとonclickハンドラを書くので、ユーザーがマウスの形に(ポインタから手に)変更し、クリックするとURLが開きます。ステータスバーのための

あなたが行うことができ、マップ上のpoistion超えるユーザー:

window.status = (getURL) 
+1

javascriptのオプション「ステータスバーのテキストを変更する」をチェックしない限り、window.statusはfirefoxでは機能しません。また、過去に訪問したかどうかによってdivリンクの色が変わるかどうかはわかりません。 – Annan

+0

あなたはそれをシミュレートすることができます。 のvar DIV_statusは= {訪問:偽、ホバー:偽を、...、}あなたはDIV-リンクステータスを格納する名前空間変数を書き込むことができ と、それに応じて色を変更します。 { (DIV_status.visited)場合 のdocument.getElementById( "DIV")。クラス名= "..." //または のdocument.getElementById( "DIV")。backgroundColorの= "..." } – xdevel2000

+0

オプス ない のdocument.getElementById(」 div ")。backgroundColor =" ... "} しかし、 document.getElementById(" div ")。style.backgroundColor =" ... "} – xdevel2000

2

あなたは、単純なリンクを作成し、控えめなJavascriptの技術を使用して、その上にonclickのリスナーを置くことができます。ユーザがリンクをクリックすると、クリックイベントを傍受し、デフォルトのアクションを防ぎ、href属性を読み込んでウィンドウを開きます。

<a href="http://www.example.com" id="myLink">link</a> 

$("#myLink").on("click", function(event) { 
    event.preventDefault(); 
    myFunctionToOpenWindowForUrl(this.href); 
}); 

これはjQueryを使用していますが、使用している他のJSライブラリにも適用できます。この方法では、ステータスバーに元のURLが表示されます。これはリンクの自然なことです。追加のコーディングは必要ありません。また、あなたのリンクはJavascriptを使わなくても動作します。これは、例えば、リンクのように見えるようにスパンをスタイリングするよりも、このアプローチの方が優れていて、それにリスナーを付け加えることです。

0

あなたはCSS使ってポインタとして表示するカーソル変更することができます(カーソル:ポインタ;)

さらに、あなたはタイトルタグに先を置くことができるので、彼が移動した場合、ユーザは目的地が表示されます要素の上にマウスを置く。

-2

はこのような何かを試してみてください:それは、あなたがここにhref="#"を置くならば、それはちょうどページの一番上にスクロールする必要がありますでしょうとして

<a href="javascript:void(0);" onclick="yourAction()" onmouseover="window.status='status bar';">link</a> 

href="javascript:void(0);"は、リンクが表示されます。 Hrefは、通常のリンク表示を持つように設定する必要があります。

onmouseover="window.status='status bar';"はマウスオーバーでウィンドウにステータスを設定します。

+0

私はフィードバックdownvotesを得ていません。 –

関連する問題