0

画像のリストがあり、画像をクリックしたら、ajax URL呼び出しを実行して、いくつかのパラメーターを検証する必要があります。

検証に問題がない場合は、ファンシーボックスを表示する必要があります。それ以外の場合は、別のファンシーボックスを表示する必要があります。

私の問題: 画像をクリックし、検証がfalseの場合、他のファニーボックスが期待どおりに表示されます。ただし、検証がtrueの場合、Firebugは「再帰が多すぎます」というエラーをスローします。

PS ::検証が真の場合、video.jsプレーヤーが表示されることが期待されます。

HTMLサンプル:

<a id="videolink" href="#1" title="Test">
  <img class="vidimg" src="1.png" videoId="1" width="180" height="180" />
</a>

<div style="display:none">
      <video id="1" poster="1.png" class="video-js vjs-default-skin">
        <source src="1362993728.mp4" type='video/mp4'>
        <source src="1362993728.webm" type='video/webm'>    
        <source src="1362993728.ogv" type='video/ogg'>                 
    </video>
</div> 

jQuery:

$("a#videolink").click(function(){  
   $videoId = $(this).children("img.vidimg").attr("videoId"); 
   $isValid = "true" or "false" ;       // validation using .ajax() call

   if($isValid == 'true'){
      $(this).fancybox().click();
   }else{
      $("#myModal").fancybox().click()
   }                                             
});

「再帰が多すぎる」とは、Firebugの行に示されています。

$videoId = $(this).children("img.vidimg").attr("videoId"); 

「false」の場合に表示されるその他のfanyboxコンテンツ:

 <div style="display:none">
    <div id="myModal"> Invalid Item</div>
 </div>
4

1 に答える 1

0

以下の変更により、この作業が期待どおりに機能するようになりました.. (ファンシーボックスのビデオを再生するには、まだいくつかの問題があります)。

HTML サンプル:

<div style="display:none">
  <div id="1">
      <video poster="1.png" class="video-js vjs-default-skin">
        <source src="1362993728.mp4" type='video/mp4'>
        <source src="1362993728.webm" type='video/webm'>    
        <source src="1362993728.ogv" type='video/ogg'>                 
    </video>
  </div>
</div> 

jQuery:

$("img.vidimg").click(function(){  
   $videoId = $(this).attr("videoId"); 
   $isValid = "true" or "false" ;       // validation using .ajax() call

   if($isValid == 'true'){
      $('#' + $videoId ).fancybox().click();
   }else{
      $("#myModal").fancybox().click()
   }                                             
});

このコードを参照して、パフォーマンスまたは悪いコード プラクティスに関連するコメントはありますか?

ビデオ プレーヤーの問題について、ここで新しい質問を作成します。この変更後、ビデオは再生されません。:(

于 2013-03-12T06:07:22.833 に答える