2012-01-07 22 views
0

これはほとんどのWebサイトで表示されます。ページがロードされると、画像が変わります。何か。そして、カーソルを画像の周りに置くと、いつも別のリンクが付いているので、指示されたページに導きます。同様のことを達成する方法は? Phpか多分javascriptを考えていますが、PHPを好むでしょう。ロードされたページの画像を動的に変更する方法各画像にリンクがついた

+0

が重複する可能性[JavaScriptを使用してDIV内のコンテンツを回転させるための最良の方法?](http://stackoverflow.com/questions/118151/best-way-to- rotate-content-within-div-using-javascript) – JJJ

答えて

1

いくつかのJavaScriptを使用できます。

<a id='ad_link' href="http://url1.com"> 
    <img src='img1_url' /> 
</a> 

そして、あなたはどこか(例えば、AJAXを介したサーバーから)からこのデータを受け取る:

は、このマークアップを持っている、のは、言ってみましょう。

{"link": "url2.com", "img": "img2_url"} 

は、その後、あなたは、この(jQueryの使用)を使用して広告を更新:

function updateAd(ad_data) { 
    $('#ad_link').attr('href', ad_data['link']); 
    $('#ad_link img').attr('src', ad_data('img')); 
} 

を今、あなたはさまざまな方法で新しい情報を要求することができます。 setTimeout()またはsetInterval()は簡単で、おそらく最も明白な方法です。

+0

洞察をいただきありがとうございます。とにかく私もこれを達成するためにPHPを使用できますか? –

+0

PHPを使用してAJAX呼び出しを処理し、新しい広告リンクを提供することができます。 –

+0

大丈夫...ありがとう –

0

phpはクライアント側ではないため、ブラウザに画像がある場合は、PHPで何もできません。JavaScript(クライアント側)を使用して画像をサーバーに呼び出すこともできます。 AJAXは、切り替えるすべての画像をレンダリングしますが、表示される画像は1つだけです.JavaScriptを使用すると、しばらくしてからその画像を非表示にし、別の画像を表示します。このような

html: 

<img id="first" src="first.jpg"/> 
<img id="second" src="second.jpg" style="display:none"/>; 

javascript: 

setTimeout('change',3000); 
function change() { 

    $('first').hide(); 
    $('second').show(); 

} 

何かが、より良い

関連する問題