[英]Custom Wordpress theme - fancybox not working?
(Wordpress 3.5.1)
嗨,在functions.php中,我包括以下內容:
function add_lightbox_cys() {
wp_enqueue_script( 'jquery' );
wp_enqueue_script( 'fancybox', get_template_directory_uri() . '/inc/lightbox/js/jquery.fancybox.pack.js', array( 'jquery' ), false, true );
wp_enqueue_script( 'lightbox', get_template_directory_uri() . '/inc/lightbox/js/jquery.lightbox.js', array('fancybox'), false, true );
wp_enqueue_script( 'lightbox-style', get_template_directory_uri() . '/inc/lightbox/css/jquery.fancybox.css' );
}
add_action( 'wp_enqueue_scripts', 'add_lightbox_cys');
然后使用以下代碼創建lightbox.js:
(function($) { $(".fancybox").fancybox(); })(jQuery);
現在在wordpress附帶的wordpress主題二十二中,此功能實際上可以在fancybox中打開圖片。
但是,當我在自己的定制主題中嘗試此操作時,它根本不會觸發fancybox。
這里是網站的鏈接: http : //goo.gl/y6qfb
有誰能夠幫助我?
您可以從此清單開始(可能不算什么):
1)。 您的頁面沒有正確的DOCTYPE
(不要問我為什么),您可以在新主題模板中對其進行修復。
2)。 您似乎沒有使用燈箱,因此請刪除此參考
wp_enqueue_script( 'lightbox', get_template_directory_uri() . '/inc/lightbox/js/jquery.lightbox.js', array('fancybox'), false, true );
3)。 您正在將fancybox css樣式表作為script加載,因此出現錯誤
Timestamp: 31/03/2013 1:14:48 PM
Error: SyntaxError: syntax error
Source File: http://jarsis.de/tground/wp-content/themes/cys/inc/lightbox/css/jquery.fancybox.css?ver=3.5.1
Line: 2
Source Code: .fancybox-wrap,
...因此您需要替換此行:
wp_enqueue_script( 'lightbox-style', get_template_directory_uri() . '/inc/lightbox/css/jquery.fancybox.css' );
這樣 :
wp_enqueue_style( 'lightbox-style', get_template_directory_uri() . '/inc/lightbox/css/jquery.fancybox.css' );
...但這取決於您如何注冊新樣式表。
4)。 您可能需要將fancybox初始化代碼包裝在.ready()
方法內,例如:
(function($) {
$(function(){
$(".fancybox").fancybox();
});
})(jQuery);
Firebug報告http://jarsis.de/tground/wp-content/themes/cys/inc/lightbox/js/jquery.lightbox.js?ver=3.5.1的404,表示未獲取Lightbox js已加載。 我想這可以解釋這個問題。
Firebug還報告了一個語法錯誤,這有點難以解釋,但與“ .fancybox-wrap”有關
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.