0

私はビーチ情報ページをビアに交換するJSでビーチページを設定しましたが、より効率的で優れたソリューションとして代わりにjQueryを使用するように再調整しました。いくつかの異なる構文を試してみました。<div><iframe>

function loadContent(elementSelector, sourceUrl) {
    $(""+elementSelector+"").load("http://yoursite.com/"+sourceURL+"");
}

function loadSomething{
    $("#divid").load("http://place.com/to/content.php");
}

後者を使用してテストページを設定しました。

私は少しJavaプログラミングをしましたが、これはすべて単純なことですが、なぜそれが機能しないのか理解できません。テストページでは、いくつかのテキストリンクが機能しますが(FFとChromeでテスト済み)、画像リンクは機能しません。アドバイスをいただければ幸いです。

4

2 に答える 2

1

私が見る限り、現在、貼り付けたサイトリンクに構文エラーがあります。

<script type="text/javascript">
  $(function() {
    $('a[href=beachPenmm.htm]').click(function() {
      $('#beachInfo').load('beachPenmm.htm');
      return false;
    });
</script>       

<script type="text/javascript">
  });

スクリプトタグ間で構文を拡張することは許可されていません。ただし、これが唯一の問題ではない可能性があります...しかし、最初に修正してください:)

于 2012-09-19T22:42:55.140 に答える
1

他の人がすでに指摘しているように、あなたのサイトにはいくつかの構文エラーがあるので、最初にそれらを確実に修正する必要があります。私はちょうどあなたをいくつかのDRYerコードに向けてナッジすると思った...あなたはたくさんの繰り返しが起こっている。あなたがしていることの基本的な結論は、「これらのタグをクリックすると、通常の動作ではなく、別の要素にタグ<a>をロードします。画像要素にそのjQueryを設定する代わりに、すべてを行うことができます。 1つの機能で:<a>href

$('a').click(function() {
    $('#beachInfo').load($(this).attr('href'));
    return false;
});

そして、それは一挙にそれらすべてをカバーします。一部のリンクを正常に動作させ、一部をページにロードする場合は、次のようなクラスを割り当てることができます。

<a class="loadInPage" href="http://...">load me in-page</a>

そして、それに応じてセレクターを変更します。

$('a.loadInPage').click(function() {
    $('#beachInfo').load($(this).attr('href'));
    return false;
});

これがあなたが物事を少しきれいにするのに役立つことを願っています。しかし、それらのエラーに注意してください!Javascrciptコンソールはあなたの友達です!

于 2012-09-19T22:52:03.010 に答える