2012-02-06 11 views
1

私はLightBoxを実装しようとしています。私は "公式"ガイドに従ってネット上を検索しようとしています。運がまったくありません。LightBoxが開かない - おそらくいくつかのJavaScriptの間違い

問題は次のとおりです。イメージをクリックすると、通常のリンクと同じように開きます。私はそれをクリックして登録していません。私もthisに従うことを試みた:

ソリューションは、jQueryのコードでのトラッキングのいくつかの種類が必要な場合は、追跡を行う方法に小さなメモを追加してください:)

現在、私は使用して(以下、レンダリングコードを持っていますASP.NET):

画像そのもの:

<a id="ContentPlaceHolder1_ContentPlaceHolder1_MainImageLink" rel="lightbox" href="../../../Media/ProductImages/KaninbamseKnirke1.jpg">  
    <img id="ContentPlaceHolder1_ContentPlaceHolder1_MainImage" title="Kanin bamse Knirke" class="ProductImage" src="../../../Media/ProductImages/KaninbamseKnirke1.jpg" alt="Kanin bamse Knirke" style="height:280px;width:280px;" />  
</a> 

頭タグ(はい - パスは動作):

<link rel="stylesheet" href="../../../Styles/lightbox.css" type="text/css" media="screen" /> 

<script src="../../../js/prototype.js" type="text/javascript"></script> 

<script src="../../../js/scriptaculous.js?load=effects,builder" type="text/javascript"></script> 

<script src="../../../js/lightbox.js" type="text/javascript"></script> 

<link href="../../../Styles/StyleSheet.css" rel="stylesheet" type="text/css" /> 

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script> 

私のボディータグ:

私は上記の問題を抱えていますので、私はこのアクティブではなく、両方で試してみました。 initLightBoxは、ライトボックスのホームページに記載されているように、私がonloadを起動するように設定したメソッドです。それは価値がある何のため

<body id="Masterbackground" onload="initLightbox();" class="badeandnav"> 

- 私のdoctype

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

答えて

1

あなたは紛争、プロトタイプでのjQueryを持っています。あなたがそれを使用していない場合は、エーテル除去jQueryは、2つのいずれかのエーテル互換性モードを設定します。 たとえば、jQueryの場合は、noConflict()を設定してから、jQueryパラメータを使用して呼び出すことができます。その他のライブラリでのjQueryを使用して

<script src="prototype.js"></script> 
<script src="jquery.js"></script> 
<script> 
jQuery.noConflict(); 

// Use jQuery via jQuery(...) 
jQuery(document).ready(function(){ 
    jQuery("div").hide(); 
}); 

// Use Prototype with $(...), etc. 
$('someid').hide(); 
</script> 

:私はthis help pageに伝えることができるものから http://docs.jquery.com/Using_jQuery_with_Other_Libraries

1

、あなたのライトボックスは、jQueryを使って動作しないはずですが、あなたがしている場合Prototype.jsScriptaculous

で動作するはずですJqueryとプロトタイプを同時に使用しようとすると、そのうちの1つが矛盾モードで実行されなければならないか、どちらも正しく動作しません。 その後、

jQuery.noConflict()

read the skinny on noConflict here

を実行し、最初のjQueryをロードして、プロトタイプとScriptaculousのをロードすることで、これを行うことができます。

あなたはその後、まだ、しかしjQuery();

を使用することによって( $()はprototype.jsのを呼び出します)、 $()を使用しなくなったのjQueryを呼び出すことができますが、
関連する問題