2012-02-18 13 views
0

私はファイルスクリプトは、負荷()関数で動作していない

<SCRIPT type="text/javascript"> 
$(function() 
{   
     $("#storefront").click(function() { 
      alert("POTANGINA"); 
      $(".centerdiv").load("storefront_a.php"); 
     }); 

});    
</SCRIPT> 

をロードするページ上でこのスクリプトを持っていると私はロードしたいページ(storefront_a.php)でこのスクリプトを持っています

<SCRIPT type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></SCRIPT> 
<SCRIPT type="text/javascript" src="http://cssglobe.com/lab/easypaginate/js/easypaginate.js"></SCRIPT> 
<script type="text/javascript"> 

    jQuery(function($){ 

     $('ul#items').easyPaginate({ 
      step:5 
     }); 

    });  

</script> 

<style> 
     #page li { 
      display: inline; 
      position: relative; 
      width: 11em 
      margin:10px; 
      padding:10px; 
     } 
     #page li li{ display: block; height: 1.5em;} 

</style> 


<div id = "page">  
<ul id="items"> 
    <li>Page 1</li> 
    <li>Page 2</li> 
    <li>Page 3</li> 
    <li>Page 4</li> 
    <li>Page 5</li> 
    <li>Page 6</li> 
    <li>Page 7</li> 
    <li>Page 8</li> 
    <li>Page 9</li> 
    <li>Page 10</li> 
    <li>Page 11</li> 
    <li>Page 12</li> 
    <li>Page 13</li> 
    <li>Page 14</li> 
</ul> 
</div> 

私はstorefront_a.phpをローカルホストから直接実行しました。しかし、load()を使って呼び出すと、実際にロードされていますが、javascriptは機能しませんでした。私を助けてくれてありがとう

+1

あなたの問題を再定義してください。どのJavaScriptが動作しませんでしたか?そして、「うまくいかない」ことによって、正確にはどういう意味ですか? –

+0

特定のブラウザはありますか? – ShankarSangoli

+0

添付されているものが動作していない –

答えて

0

場合要素は、ページのロードで利用できない場合はjQueryのイベントハンドラをアタッチすることはできませんので、その後clickは動作しません。

動的に作成された要素にイベントハンドラを追加するには、基本的にdelegateまたはonを使用する必要があります。

$(document).on("click", "#storefront", function() { 
    alert("POTANGINA"); 
    $(".centerdiv").load("storefront_a.php"); 
}); 

代わりのdocumentあなたは、ページ上で利用できるようになりますstorefront要素の親コンテナを指定することができます。

onはjQuery ver 1.7で導入されています。古いバージョンを使用している場合は、delegate

$(document).delegate("#storefront", "click", function() { 
    alert("POTANGINA"); 
    $(".centerdiv").load("storefront_a.php"); 
}); 

参照を使用します。

+0

storefront_a.phpにこのを添付するのはいいですか?それはアクセス可能でしょうか?または私はそれを親に含めるでしょうか? –

+0

親ページに含めることができればうまくいくはずです。 – ShankarSangoli

+0

okey私は私が戻ってきますしようとします。ありがとう –

-1

最新のjQueryを含む& jQueryのライブメソッドを使用します。 storefront要素が動的に追加され

$("#storefront").live('click',function() {} 
+0

)jqueryにすべての添付されたスクリプトを含む関数がある。スクリプト機能が動作しています。添付されたスクリプトは機能していません。 –

+0

a)ドキュメントに '#storefront'がどこにあるのかわかりません。破壊されない場合、 '.click()'を避ける理由はありません。特に、最新のjQueryを推奨している場合は、新しいコードに対して推奨することをやめてください。置き換えは '$(document).on()'です;しかし、 c)有効であっても '.live()'(そして今は '$(document).on()')は悪い関数とみなされます。 '$(listener).on()'を使う方が良いです。ここで、listenerは決して破棄されない最も近い祖先を表すjQueryセレクターです。 –

+0

hmm ..はいグレッグ私はライブに同意することはお勧めしません。最新のjQueryコアで 'on'へのマッピング。 –

関連する問題