2017-03-22 4 views
2

非常に助けが必要です。私はいくつかの記事を表示して2つのモジュールで私のウェブサイト上のページを持っています。左側には、{loadposition}を使って短いニュースを表示するモジュールと、長い記事を表示する右側モジュールにあるJoomlaの記事があります。自分の記事のモジュールを別のモジュールで置き換えるスイッチャーを作りたいと思っています。正しく動作していない私のコードは、モジュールをロードするテキストを変更していないJoomlaでJSとPHPを使用してモジュールを別のモジュールに置き換えます

\t 
 

 
<div id="mods">{loadposition mod1}</div> 
 
<ul> 
 
<li><a id="mod1" href="#mod1"><img /></a></li> 
 
<li><a id="mod2" href="#mod2"><img /></a></li> 
 
</ul>

、スクリプト以下れる

jQuery(document).ready(function() { 
 
    jQuery("#mod1").click(function() { 
 
    jQuery("#mods").html('{loadposition mod1}'); 
 
    }); 
 
    jQuery("#mod2").click(function() { 
 
    jQuery("#mods").html('{loadposition mod2}'); 
 
    }); 
 
});

以下れる私がする必要がfulと一緒にロードされたmod1の代わりに別のモジュールmod2をロードするlページ。スクリプトが正しく動作するように助けてください。あなたのコードで

+0

ちょうどアンカータグ内のクリック可能な何かを置くことになります。空のタグを使用するのではなく、実際の作業イメージタグを挿入するか、テキストを追加します。 –

答えて

0

<div id="mods">{loadposition mod1}</div> 
<ul> 
<li><a id="mod1" href="#mod1"><img /></a></li> 
<li><a id="mod2" href="#mod2"><img /></a></li> 
</ul> 

{loadposition mod1}は、あなたはjQueryのを使用している場合、それは単にクライアントPCに変更するが、文句を言わないモジュールをロードするように、コードを解析することによって、サーバーからモジュールMOD1をロードするために使用されます。それにはajaxが必要な場合があります。モジュールを両方ともロードして1つのモジュールを非表示にすることが最善です。誰かが第2のイメージをクリックすると、他のモジュールが表示されます。これは、より良い選択肢であるが、私がテストされていないことができます。

<div id="mods1">{loadposition mod1}</div> 
<div id="mods2" style="display: none">{loadposition mod2}</div> 
<ul> 
    <li><a id="mod1" href="#mod1"><img /></a></li> 
    <li><a id="mod2" href="#mod2"><img /></a></li> 
</ul> 

は私のjQueryのコードは

jQuery(document).ready(function() { 
    jQuery("#mod1").click(function() { 
    $("#mods1").css("display", "block"); 
    $("#mods2").css("display", "none"); 
    }); 
    jQuery("#mod2").click(function() { 
    $("#mods2").css("display", "block"); 
    $("#mods1").css("display", "none"); 
    }); 
}); 
+0

はい、私はあなたの方法を知っていますが、私は2つのモジュールだけでなく、15をロードするつもりです。そして、それらをすべてロードするように設定すると、私のページは長い間 – Amonnn

関連する問題