0

クリックすることになっている 3 つのリンク画像があります。キャプションがその下とクリック可能なボタンに表示され、そのサイトに移動します。3 つすべてが同じボタンとキャプションを通過するため、クリックした画像に基づいて変更する必要があります。その機能を実現するために使用できる関数は 1 つだけです。だから私はそれをしましたが、ボタンをクリックしても何もしません。

構造をいじることは許されていません - クリックされた画像に応じて、リンクされた 3 つの画像すべてに 3 つの変数 (キャプション、ボタン、およびターゲット) を出力させるために、何らかの関数を 1 つ取得する必要があります。私はすでに3つの異なる機能で動作させましたが、今は1つでやらなければなりません。

私はまったくの初心者なので、できるだけわかりやすく方法を教えてください。ありがとう!

<html>
<head>
<script>
var caption1='My Blog';
var button1='My Blog';
var target1= 'http://iamunicorngirl.livejournal.com';

var caption2='Nail Polish Line';
var button2='Nail Polish Line';
var target2='http://mustachelacquer.etsy.com';

var caption3='Failblog';
var button3='Failblog';
var target3='http://failblog.org';

function ButtonFunction(caption1, button1, target3);
{
document.getElementById('linkbox').innerHTML=caption1;
document.getElementById('mybutton').innerHTML=button1;
document.getElementById('linkbox').setAttribute('onclick','window.location.href="'+ target3 +'";');
}
</script>
</head>

<table>
<table align="center">
<tr>
<td><img type="picture" src="blog.png" onclick="ButtonFunction(caption1, button1, target1)";></td>
<td><img type="picture" src="nailpolish.png" onclick="ButtonFunction(caption2, button2, target2)";></td>
<td><img type="picture" src="failblog.png" onclick="ButtonFunction(caption3, button3, target3)";></td>
</tr>
<tr>
<td><h3 type="text" id="linkbox"></h3></td>
</tr>
<tr>
<td><button id="mybutton"></button></td>
</tr>
</table>
</html>
4

1 に答える 1

0

あなたが提供したコードには 2 つの問題があります。

1) のセミコロンの位置が間違っていますButtonFunction。次のようになります。

function ButtonFunction(caption1, button1, target3) { ...

2) セミコロンがonclick定義外です。それらは次のようになります。

... onclick="ButtonFunction(caption1, button1, target1);"> ...

実施例

ブラウザで開発者コンソールを使用すると便利です。Javascript エラーは簡単に識別できるようになります。例えば:SyntaxError: Expected token '{'

于 2013-10-03T19:14:50.473 に答える