Version Description
- [ Add function ] sidebar fix
Download this release
Release Info
Developer | kurudrive |
Plugin | Lightning Advanced Unit |
Version | 2.6.0 |
Comparing to | |
See all releases |
Code changes from version 2.5.0 to 2.6.0
- gulpfile.js +24 -29
- inc/navigation/js/navigation.js +2 -0
- inc/navigation/js/navigation.min.js +0 -8
- inc/navigation/navigation.php +15 -4
- inc/sidebar-fix/js/sidebar-fix.js +157 -0
- inc/sidebar-fix/sidebar-fix.php +67 -0
- js/{lightning_adv.js → lightning-adv-common.js} +0 -0
- js/lightning-adv.js +284 -0
- js/lightning-adv.min.js +14 -0
- js/lightning_adv_admin.js +0 -0
- languages/lightning-adv-unit-ja.mo +0 -0
- languages/lightning-adv-unit-ja.po +6 -14
- lightning_advanced_unit.php +11 -1
- package.json +32 -0
- readme.txt +6 -3
gulpfile.js
CHANGED
@@ -9,49 +9,44 @@ var concat = require('gulp-concat');
|
|
9 |
var jsmin = require('gulp-jsmin');
|
10 |
// エラーでも監視を続行させる
|
11 |
var plumber = require('gulp-plumber');
|
12 |
-
//
|
13 |
var spritesmith = require('gulp.spritesmith');
|
14 |
-
// http://blog.e-riverstyle.com/2014/02/gulpspritesmithcss-spritegulp.html
|
15 |
|
16 |
-
// // Task
|
17 |
-
// gulp.task('cssmin', function () {
|
18 |
-
// gulp.src('css/**/*.css')
|
19 |
-
// .pipe(plumber()) // エラーでも監視を続行
|
20 |
-
// .pipe(cssmin())
|
21 |
-
// .pipe(rename({suffix: '.min'}))
|
22 |
-
// .pipe(gulp.dest('css'));
|
23 |
-
// });
|
24 |
-
|
25 |
-
// gulp.task( 'copy', function() {
|
26 |
-
// // bootstrapのcssをscssディレクトリに複製
|
27 |
-
// gulp.src( './bootstrap/css/bootstrap.min.css' )
|
28 |
-
// .pipe(rename({prefix: "_",extname: ".scss"})) // 拡張子をscssに
|
29 |
-
// .pipe( gulp.dest( './_scss/' ) ); // _scss ディレクトリに保存
|
30 |
-
// } );
|
31 |
|
32 |
// ファイル結合
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
|
39 |
// js最小化
|
40 |
gulp.task('jsmin', function () {
|
41 |
-
gulp.src(['./
|
42 |
.pipe(plumber()) // エラーでも監視を続行
|
43 |
.pipe(jsmin())
|
44 |
.pipe(rename({suffix: '.min'}))
|
45 |
-
.pipe(gulp.dest('./
|
46 |
});
|
47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
// Watch
|
49 |
gulp.task('watch', function() {
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
});
|
55 |
|
56 |
// gulp.task('default', ['scripts','watch','sprite']);
|
57 |
-
gulp.task('default', ['watch']);
|
9 |
var jsmin = require('gulp-jsmin');
|
10 |
// エラーでも監視を続行させる
|
11 |
var plumber = require('gulp-plumber');
|
12 |
+
// npm install gulp.spritesmith --save-dev
|
13 |
var spritesmith = require('gulp.spritesmith');
|
|
|
14 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
|
16 |
// ファイル結合
|
17 |
+
gulp.task('concat', function() {
|
18 |
+
return gulp.src(['./js/lightning-adv-common.js','./inc/navigation/js/navigation.js','./inc/sidebar-fix/js/sidebar-fix.js'])
|
19 |
+
.pipe(concat('lightning-adv.js'))
|
20 |
+
.pipe(gulp.dest('./js/'));
|
21 |
+
});
|
22 |
|
23 |
// js最小化
|
24 |
gulp.task('jsmin', function () {
|
25 |
+
gulp.src(['./js/lightning-adv.js'])
|
26 |
.pipe(plumber()) // エラーでも監視を続行
|
27 |
.pipe(jsmin())
|
28 |
.pipe(rename({suffix: '.min'}))
|
29 |
+
.pipe(gulp.dest('./js'));
|
30 |
});
|
31 |
|
32 |
+
|
33 |
+
// copy
|
34 |
+
// gulp.task( 'copy', function() {
|
35 |
+
// gulp.src( './inc/navigation/js/navigation.js' )
|
36 |
+
// .pipe(rename({prefix: "_",extname: ".scss"})) // 拡張子をscssに
|
37 |
+
// .pipe( gulp.dest( './design_skin/origin/_scss/' ) ); // _scss ディレクトリに保存
|
38 |
+
// gulp.src( './library/bootstrap/fonts/**' )
|
39 |
+
// .pipe( gulp.dest( './design_skin/origin/fonts/' ) ); // _scss ディレクトリに保存
|
40 |
+
// } );
|
41 |
+
|
42 |
+
|
43 |
// Watch
|
44 |
gulp.task('watch', function() {
|
45 |
+
gulp.watch('./js/lightning-adv-common.js', ['concat']);
|
46 |
+
gulp.watch('./inc/navigation/js/navigation.js', ['concat']);
|
47 |
+
gulp.watch('./inc/sidebar-fix/js/sidebar-fix.js', ['concat']);
|
48 |
+
gulp.watch('./js/lightning-adv.js', ['jsmin']);
|
49 |
});
|
50 |
|
51 |
// gulp.task('default', ['scripts','watch','sprite']);
|
52 |
+
gulp.task('default', ['watch']);
|
inc/navigation/js/navigation.js
CHANGED
@@ -1,7 +1,9 @@
|
|
1 |
jQuery(document).ready(function(){
|
|
|
2 |
run_slide_menu_control();
|
3 |
});
|
4 |
jQuery(window).resize(function(){
|
|
|
5 |
run_menuResize();
|
6 |
});
|
7 |
/*-------------------------------------------*/
|
1 |
jQuery(document).ready(function(){
|
2 |
+
if( !jQuery('body').hasClass('menu-slide') ){ return; }
|
3 |
run_slide_menu_control();
|
4 |
});
|
5 |
jQuery(window).resize(function(){
|
6 |
+
if( !jQuery('body').hasClass('menu-slide') ){ return; }
|
7 |
run_menuResize();
|
8 |
});
|
9 |
/*-------------------------------------------*/
|
inc/navigation/js/navigation.min.js
DELETED
@@ -1,8 +0,0 @@
|
|
1 |
-
|
2 |
-
jQuery(document).ready(function(){run_slide_menu_control();});jQuery(window).resize(function(){run_menuResize();});function run_slide_menu_control(){jQuery('.menuBtn').prependTo('#bodyInner');jQuery('.menuBtn').each(function(){jQuery(this).click(function(){if(jQuery(this).hasClass('menuBtn_left')){var menuPosition='left';}else{var menuPosition='right';}
|
3 |
-
if(jQuery(this).hasClass('menuOpen')){slide_menu_open(menuPosition);}else{slide_menu_close(menuPosition);}});});}
|
4 |
-
function slide_menu_open(menuPosition){var navSection_open_position='navSection_open_'+menuPosition;jQuery('#navSection').addClass(navSection_open_position);var wrap_width=jQuery('body').width();jQuery('#bodyInner').css({"width":wrap_width});jQuery('#wrap').css({"width":wrap_width});var menu_width=wrap_width-60+'px';jQuery('#headerTop').appendTo('#navSection');jQuery('#gMenu_outer').appendTo('#navSection');if(menuPosition=='right'){jQuery('#wrap').stop().animate({"margin-left":"-"+menu_width,},200);jQuery('header.siteHeader').stop().animate({"left":"-"+menu_width,},200);jQuery('#navSection').css({"display":"block","width":menu_width,"right":"-"+menu_width}).stop().animate({"right":0,},200);}else if(menuPosition=='left'){jQuery('#wrap').stop().animate({"margin-left":menu_width,},200);jQuery('header.siteHeader').stop().animate({"left":menu_width,},200);jQuery('#navSection').css({"display":"block","width":menu_width,"left":"-"+menu_width}).stop().animate({"left":0,},200,function(){});}}
|
5 |
-
function slide_menu_close(menuPosition){if(!menuPosition){if(jQuery('#navSection').hasClass('navSection_open_right')){menuPosition='right';}else{menuPosition='left';}}
|
6 |
-
var wrap_width=jQuery('body').width();jQuery('#bodyInner').css({"width":wrap_width});jQuery('#wrap').css({"width":wrap_width});var menu_width=wrap_width-60+'px';jQuery('#wrap').stop().animate({"margin-left":"0"},200);jQuery('header.siteHeader').stop().animate({"left":"0"},200);if(menuPosition=='right'){jQuery('header.siteHeader').stop().animate({"left":"0"},200);jQuery('#navSection').stop().animate({"right":"-"+menu_width},200,function(){menuClose_common();});}else if(menuPosition=='left'){jQuery('#navSection').stop().animate({"left":"-"+menu_width},200,function(){menuClose_common();});}}
|
7 |
-
function menuClose_common(){jQuery('#navSection').removeClass('navSection_open_right');jQuery('#navSection').removeClass('navSection_open_left');jQuery('#headerTop').prependTo('header.siteHeader');jQuery('#gMenu_outer').insertAfter('.navbar-header');jQuery('#navSection').css({"right":"","left":""});jQuery('#bodyInner').css({"width":""});jQuery('#wrap').css({"width":""});jQuery('#navSection').css({"display":""});}
|
8 |
-
function run_menuResize(){var wrap_width=jQuery('body').width();jQuery('#bodyInner').css({"width":wrap_width});var headerHeight=jQuery('header.siteHeader').height;jQuery('#top__fullcarousel').css({"margin-top":headerHeight});if(wrap_width>991){slide_menu_close();}}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/navigation/navigation.php
CHANGED
@@ -36,14 +36,25 @@ function ltg_adv_is_slide_menu(){
|
|
36 |
}
|
37 |
}
|
38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
/*-------------------------------------------*/
|
40 |
/* Load js & CSS
|
41 |
/*-------------------------------------------*/
|
42 |
add_action( 'wp_enqueue_scripts','ltg_adv_nav_add_script',100 );
|
43 |
function ltg_adv_nav_add_script() {
|
44 |
if ( ltg_adv_is_slide_menu() ) {
|
45 |
-
wp_register_script( 'ltg_adv_nav_js' , LIGHTNING_ADVANCED_URL.'inc/navigation/js/navigation.min.js', array( 'jquery','lightning-js' ), LIGHTNING_ADVANCED_VERSION );
|
46 |
-
wp_enqueue_script( 'ltg_adv_nav_js' );
|
47 |
wp_enqueue_style( 'ltg_adv_nav_style_css', LIGHTNING_ADVANCED_URL.'inc/navigation/css/navigation.css', array( 'lightning-design-style' ), LIGHTNING_ADVANCED_VERSION, 'all' );
|
48 |
}
|
49 |
}
|
@@ -66,9 +77,9 @@ function ltg_adv_insert_header_before_html(){
|
|
66 |
/* insert_footer_after_html
|
67 |
/*-------------------------------------------*/
|
68 |
add_action( 'lightning_footer_after', 'ltg_adv_insert_footer_after_html' );
|
69 |
-
function ltg_adv_insert_footer_after_html(){
|
70 |
if ( ltg_adv_is_slide_menu() ) {
|
71 |
echo '</div><!-- [ /#wrap ] -->';
|
72 |
echo '</div><!-- [ /#bodyInner ] -->';
|
73 |
}
|
74 |
-
}
|
36 |
}
|
37 |
}
|
38 |
|
39 |
+
/*-------------------------------------------*/
|
40 |
+
/* add body class
|
41 |
+
/*-------------------------------------------*/
|
42 |
+
add_filter( 'body_class', 'ltg_adv_add_body_class_menu_slide' );
|
43 |
+
function ltg_adv_add_body_class_menu_slide( $class ){
|
44 |
+
if ( ltg_adv_is_slide_menu() ){
|
45 |
+
if( apply_filters( 'lightning_slide_menu_enable', true ) ) {
|
46 |
+
$class[] = 'menu-slide';
|
47 |
+
}
|
48 |
+
}
|
49 |
+
return $class;
|
50 |
+
}
|
51 |
+
|
52 |
/*-------------------------------------------*/
|
53 |
/* Load js & CSS
|
54 |
/*-------------------------------------------*/
|
55 |
add_action( 'wp_enqueue_scripts','ltg_adv_nav_add_script',100 );
|
56 |
function ltg_adv_nav_add_script() {
|
57 |
if ( ltg_adv_is_slide_menu() ) {
|
|
|
|
|
58 |
wp_enqueue_style( 'ltg_adv_nav_style_css', LIGHTNING_ADVANCED_URL.'inc/navigation/css/navigation.css', array( 'lightning-design-style' ), LIGHTNING_ADVANCED_VERSION, 'all' );
|
59 |
}
|
60 |
}
|
77 |
/* insert_footer_after_html
|
78 |
/*-------------------------------------------*/
|
79 |
add_action( 'lightning_footer_after', 'ltg_adv_insert_footer_after_html' );
|
80 |
+
function ltg_adv_insert_footer_after_html(){
|
81 |
if ( ltg_adv_is_slide_menu() ) {
|
82 |
echo '</div><!-- [ /#wrap ] -->';
|
83 |
echo '</div><!-- [ /#bodyInner ] -->';
|
84 |
}
|
85 |
+
}
|
inc/sidebar-fix/js/sidebar-fix.js
ADDED
@@ -0,0 +1,157 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*-------------------------------------------*/
|
2 |
+
/* スクロール時のサイドバー位置固定処理
|
3 |
+
/*-------------------------------------------*/
|
4 |
+
;(function($){
|
5 |
+
|
6 |
+
/* 読み込み / リサイズ時の処理
|
7 |
+
/*-------------------------------------------*/
|
8 |
+
jQuery(document).ready(function(){
|
9 |
+
|
10 |
+
});
|
11 |
+
jQuery(window).resize(function(){
|
12 |
+
|
13 |
+
});
|
14 |
+
jQuery(window).scroll(function(){
|
15 |
+
sideFix_scroll();
|
16 |
+
});
|
17 |
+
|
18 |
+
|
19 |
+
/* リセット処理
|
20 |
+
/*-------------------------------------------*/
|
21 |
+
function sideFix_reset(){
|
22 |
+
// サイドバー上部の余白をリセット
|
23 |
+
jQuery('.sideSection').css({ "margin-top" : "" });
|
24 |
+
// jQuery('.sideSection').css({ "position":"relative", "bottom":"", "left":"" });
|
25 |
+
}
|
26 |
+
|
27 |
+
/* スクロール時の処理
|
28 |
+
/*-------------------------------------------*/
|
29 |
+
function sideFix_scroll(){
|
30 |
+
|
31 |
+
if( !$('body').hasClass('sidebar-fix') ){ return; }
|
32 |
+
|
33 |
+
// 画面の幅を取得
|
34 |
+
var wrap_width = $('body').width();
|
35 |
+
// 画面の高を取得
|
36 |
+
var window_height = document.documentElement.clientHeight;
|
37 |
+
|
38 |
+
// 画面幅が狭い(1カラム)の場合
|
39 |
+
if ( wrap_width < 992 ) {
|
40 |
+
// リセット処理
|
41 |
+
sideFix_reset()
|
42 |
+
// 画面幅が広い(2カラム)の場合
|
43 |
+
} else {
|
44 |
+
|
45 |
+
// サイドバーの位置を取得
|
46 |
+
var sidebar_position_now = jQuery('.sideSection').offset();
|
47 |
+
// コンテンツエリアの位置を取得
|
48 |
+
var content_position_now = jQuery('.mainSection').offset();
|
49 |
+
|
50 |
+
// サイドバーの高さを取得
|
51 |
+
var sidebar_height = jQuery('.sideSection').outerHeight();
|
52 |
+
// メインコンテンツの高さを取得
|
53 |
+
var content_height = jQuery('.mainSection').outerHeight();
|
54 |
+
// メインコンテンツとサイドバーの高さの差
|
55 |
+
var height_difference = content_height - sidebar_height;
|
56 |
+
|
57 |
+
// サイドバー下端までの距離(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効) = コンテンツエリアの位置(高さ)+ サイドバーの高さ
|
58 |
+
var sidebar_bottom_position_default = content_position_now['top'] + sidebar_height;
|
59 |
+
// コンテンツアリア下端までの距離 = サイトバーの位置(高さ)+ コンテントエリアの高さ
|
60 |
+
var content_bottom_position_default = content_position_now['top'] + content_height;
|
61 |
+
|
62 |
+
// サイドバー下端までの距離 = サイトバーの位置(高さ)+ サイドバーの高さ
|
63 |
+
var sidebar_bottom_position_now = sidebar_position_now['top'] + sidebar_height;
|
64 |
+
// コンテンツアリア下端までの距離 = サイトバーの位置(高さ)+ コンテントエリアの高さ
|
65 |
+
var content_bottom_position_now = content_position_now['top'] + content_height;
|
66 |
+
|
67 |
+
|
68 |
+
/*
|
69 |
+
* 初期状態で画面からサイドバーがはみだしている場合( 画面の高さ < サイドバー下端までの距離 )
|
70 |
+
*/
|
71 |
+
if ( window_height < sidebar_bottom_position_default ) {
|
72 |
+
|
73 |
+
// 画面からはみ出しているサイドバーの高さ
|
74 |
+
var sidebar_over_size = sidebar_bottom_position_default - window_height;
|
75 |
+
|
76 |
+
// スクロール開始位置の状態ではみ出す量 = サイドバーの高さ - ウィンドウの高さ
|
77 |
+
var sidebar_over_size_start = sidebar_height - window_height;
|
78 |
+
|
79 |
+
/*
|
80 |
+
* 移動開始位置でもサイドバーが画面内からはみ出している場合
|
81 |
+
*/
|
82 |
+
if ( sidebar_height > window_height ) {
|
83 |
+
|
84 |
+
// スクロール開始位置の時点でサイドバーが画面からはみ出している量 = 移動開始スクロール値 + 移動開始時にはみ出している量 + 余白
|
85 |
+
var move_position_start = content_position_now['top'] + sidebar_over_size_start + 30;
|
86 |
+
|
87 |
+
// ★ サイドバーの移動終了スクロール値 = コンテンツエリアまでの高さ + はみ出していたコンテンツの高さ + 余白
|
88 |
+
var move_position_end = height_difference + content_position_now['top'] + sidebar_over_size_start + 30;
|
89 |
+
|
90 |
+
/*
|
91 |
+
* 移動開始位置ではサイドバーが画面内に収まっている場合
|
92 |
+
*/
|
93 |
+
} else {
|
94 |
+
|
95 |
+
// ★ サイドバーの移動開始スクロール値 = コンテンツエリアまでの高さ(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効)
|
96 |
+
var move_position_start = content_position_now['top'];
|
97 |
+
// ★ サイドバーの移動終了スクロール値 = メインコンテンツとサイドバーの高さの差 + コンテンツエリアまでの高さ(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効)
|
98 |
+
var move_position_end = height_difference + content_position_now['top'];
|
99 |
+
}
|
100 |
+
|
101 |
+
/*
|
102 |
+
* 初期状態で画面からはみだしていない場合( 画面の高さ > サイドバー下端までの距離 )
|
103 |
+
*/
|
104 |
+
} else {
|
105 |
+
|
106 |
+
// ★ サイドバーの移動開始スクロール値 = コンテンツエリアまでの高さ(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効)
|
107 |
+
var move_position_start = content_position_now['top'];
|
108 |
+
// ★ サイドバーの移動終了スクロール値 = メインコンテンツとサイドバーの高さの差 + コンテンツエリアまでの高さ(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効)
|
109 |
+
var move_position_end = height_difference + content_position_now['top'];
|
110 |
+
|
111 |
+
} // if ( sideFix.window_height < sidebar_bottom_position_default ) {
|
112 |
+
|
113 |
+
|
114 |
+
/* スクロール動作条件
|
115 |
+
/*-------------------------------------------*/
|
116 |
+
// サイドバーがメインコンテンツよりも高い場合は処理しない
|
117 |
+
if ( sidebar_height > content_height ){ return; }
|
118 |
+
|
119 |
+
// スクロール量を取得
|
120 |
+
var scrollHeight = window.pageYOffset;
|
121 |
+
|
122 |
+
// console.log('content_bottom_position_now : ' + content_bottom_position_now + ' / sidebar_bottom_position_now : ' + sidebar_bottom_position_now );
|
123 |
+
// console.log('move_position_end : ' + move_position_end + ' / scrollHeight : ' + scrollHeight );
|
124 |
+
// console.log('move_position_end : ' + move_position_end + ' / scrollHeight : ' + scrollHeight );
|
125 |
+
|
126 |
+
|
127 |
+
// スクロール量がサイドバーの移動開始スクロール値より少ない場合
|
128 |
+
if ( scrollHeight < move_position_start ){
|
129 |
+
// リセット処理
|
130 |
+
sideFix_reset();
|
131 |
+
|
132 |
+
// スクロール量がサイドバーの移動開始スクロール値より大きい場合
|
133 |
+
} else {
|
134 |
+
|
135 |
+
// スクロールの高さより サイドバーの移動終了スクロール値 が大きい場合のみ処理する
|
136 |
+
// if ( content_bottom_position_now > sidebar_bottom_position_now ){ // これがないと延々とスクロールする
|
137 |
+
if ( scrollHeight < move_position_end ){ // これがないと延々とスクロールする
|
138 |
+
|
139 |
+
// 移動開始
|
140 |
+
|
141 |
+
// サイドバー上部に追加する余白 = スクロール量 - サイドバーの移動開始スクロール値
|
142 |
+
var yohaku = scrollHeight - move_position_start;
|
143 |
+
// サイドバー上部に余白を追加
|
144 |
+
jQuery('.sideSection').css({ "margin-top" : yohaku });
|
145 |
+
// jQuery('.sideSection').css({ "position":"fixed", "bottom":"30", "left":sidebar_position_now['left'],"width":sideFix.sidebar_width });
|
146 |
+
|
147 |
+
} else {
|
148 |
+
// スクロール量が終了ポイントを過ぎた時、下端が揃わないので強制的に揃える
|
149 |
+
var yohaku = content_height - sidebar_height;
|
150 |
+
jQuery('.sideSection').css({ "margin-top" : yohaku });
|
151 |
+
} // if ( scrollHeight < move_position_start ){
|
152 |
+
}
|
153 |
+
} // if ( sideFix.wrap_width < 992 ) {
|
154 |
+
|
155 |
+
}
|
156 |
+
|
157 |
+
})(jQuery);
|
inc/sidebar-fix/sidebar-fix.php
ADDED
@@ -0,0 +1,67 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*-------------------------------------------*/
|
3 |
+
/* Customizer
|
4 |
+
/*-------------------------------------------*/
|
5 |
+
add_action( 'customize_register', 'lightning_adv_unit_customize_register_sidebar_fix' );
|
6 |
+
function lightning_adv_unit_customize_register_sidebar_fix($wp_customize) {
|
7 |
+
$wp_customize->add_setting( 'lightning_theme_options[sidebar_fix]', array(
|
8 |
+
'default' => false,
|
9 |
+
'type' => 'option',
|
10 |
+
'capability' => 'edit_theme_options',
|
11 |
+
'sanitize_callback' => 'lightning_sanitize_checkbox',
|
12 |
+
));
|
13 |
+
$wp_customize->add_control( 'lightning_theme_options[sidebar_fix]',array(
|
14 |
+
'label' => __('Don\'t fix the sidebar', LIGHTNING_ADVANCED_TEXTDOMAIN),
|
15 |
+
'section' => 'lightning_design',
|
16 |
+
'settings' => 'lightning_theme_options[sidebar_fix]',
|
17 |
+
'type' => 'checkbox',
|
18 |
+
'priority' => 555,
|
19 |
+
));
|
20 |
+
$wp_customize->selective_refresh->add_partial( 'lightning_theme_options[sidebar_fix]', array(
|
21 |
+
'selector' => '.sideSection',
|
22 |
+
'render_callback' => '',
|
23 |
+
) );
|
24 |
+
}
|
25 |
+
|
26 |
+
/*-------------------------------------------*/
|
27 |
+
/* add body class
|
28 |
+
/*-------------------------------------------*/
|
29 |
+
add_filter( 'body_class', 'ltg_adv_add_body_class_sidefix' );
|
30 |
+
function ltg_adv_add_body_class_sidefix( $class ){
|
31 |
+
$options = get_option('lightning_theme_options');
|
32 |
+
if ( !isset( $options['sidebar_fix'] ) || !$options['sidebar_fix'] ) {
|
33 |
+
if( apply_filters( 'lightning_sidefix_enable', true ) ) {
|
34 |
+
$class[] = 'sidebar-fix';
|
35 |
+
}
|
36 |
+
}
|
37 |
+
return $class;
|
38 |
+
}
|
39 |
+
|
40 |
+
/*-------------------------------------------*/
|
41 |
+
/* 編集ショートカットボタンの位置調整(ウィジェットのショートカットボタンと重なってしまうため)
|
42 |
+
/*-------------------------------------------*/
|
43 |
+
add_action( 'wp_head', 'lightning_adv_unit_sidefix_admin_css', 2 );
|
44 |
+
function lightning_adv_unit_sidefix_admin_css(){
|
45 |
+
if ( is_customize_preview() ){
|
46 |
+
$custom_css = ".sideSection > .customize-partial-edit-shortcut-lightning_theme_options-sidebar_fix { left:0px; }";
|
47 |
+
wp_add_inline_style( 'lightning-design-style', $custom_css );
|
48 |
+
}
|
49 |
+
}
|
50 |
+
|
51 |
+
/*-------------------------------------------*/
|
52 |
+
/* Position Change
|
53 |
+
/*-------------------------------------------*/
|
54 |
+
// add_action( 'wp_head', 'lightning_adv_unit_sidebar_fix_css', 2 );
|
55 |
+
// function lightning_adv_unit_sidebar_fix_css(){
|
56 |
+
// $options = get_option( 'lightning_theme_options' );
|
57 |
+
// if ( isset($options['sidebar_fix'] ) && $options['sidebar_fix'] ){
|
58 |
+
// $custom_css = "/*-------------------------------------------*/
|
59 |
+
// /* sidebar child menu display
|
60 |
+
// /*-------------------------------------------*/
|
61 |
+
// .localNav ul ul.children { display:none; }
|
62 |
+
// .localNav ul li.current_page_ancestor ul.children,
|
63 |
+
// .localNav ul li.current_page_item ul.children,
|
64 |
+
// .localNav ul li.current-cat ul.children{ display:block; }";
|
65 |
+
// wp_add_inline_style( 'lightning-design-style', $custom_css );
|
66 |
+
// }
|
67 |
+
// }
|
js/{lightning_adv.js → lightning-adv-common.js}
RENAMED
File without changes
|
js/lightning-adv.js
ADDED
@@ -0,0 +1,284 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
jQuery(document).ready(function(){
|
3 |
+
if( !jQuery('body').hasClass('menu-slide') ){ return; }
|
4 |
+
run_slide_menu_control();
|
5 |
+
});
|
6 |
+
jQuery(window).resize(function(){
|
7 |
+
if( !jQuery('body').hasClass('menu-slide') ){ return; }
|
8 |
+
run_menuResize();
|
9 |
+
});
|
10 |
+
/*-------------------------------------------*/
|
11 |
+
/* メニューの開閉
|
12 |
+
/* <div id="menu" onclick="showHide('menu');" class="itemOpen">MENU</div>
|
13 |
+
/* * header.siteHeader を left で制御しているのは Safariでは
|
14 |
+
/* position:fixed しているとウィンドウにfixしてしまってwrapを横にずらしてもついて来ないため
|
15 |
+
/*-------------------------------------------*/
|
16 |
+
|
17 |
+
function run_slide_menu_control(){
|
18 |
+
jQuery('.menuBtn').prependTo('#bodyInner');
|
19 |
+
jQuery('.menuBtn').each(function(){
|
20 |
+
jQuery(this).click(function(){
|
21 |
+
if ( jQuery(this).hasClass('menuBtn_left') ){
|
22 |
+
var menuPosition = 'left';
|
23 |
+
} else {
|
24 |
+
var menuPosition = 'right';
|
25 |
+
}
|
26 |
+
// ※ この時点でLightning本体のmaster.jsによって既に menuOpenに新しく切り替わっている
|
27 |
+
if ( jQuery(this).hasClass('menuOpen') ) {
|
28 |
+
slide_menu_open(menuPosition);
|
29 |
+
} else {
|
30 |
+
slide_menu_close(menuPosition);
|
31 |
+
}
|
32 |
+
});
|
33 |
+
});
|
34 |
+
}
|
35 |
+
|
36 |
+
function slide_menu_open(menuPosition){
|
37 |
+
var navSection_open_position = 'navSection_open_' + menuPosition;
|
38 |
+
jQuery('#navSection').addClass(navSection_open_position);
|
39 |
+
|
40 |
+
var wrap_width = jQuery('body').width();
|
41 |
+
jQuery('#bodyInner').css({"width":wrap_width});
|
42 |
+
jQuery('#wrap').css({"width":wrap_width});
|
43 |
+
|
44 |
+
var menu_width = wrap_width - 60 + 'px';
|
45 |
+
|
46 |
+
jQuery('#headerTop').appendTo('#navSection');
|
47 |
+
jQuery('#gMenu_outer').appendTo('#navSection');
|
48 |
+
|
49 |
+
if ( menuPosition == 'right' ){
|
50 |
+
jQuery('#wrap').stop().animate({
|
51 |
+
// 右にメニューを表示するために左に逃げる
|
52 |
+
"margin-left": "-" + menu_width,
|
53 |
+
},200);
|
54 |
+
jQuery('header.siteHeader').stop().animate({
|
55 |
+
"left":"-"+menu_width,
|
56 |
+
},200);
|
57 |
+
jQuery('#navSection').css({"display":"block","width":menu_width, "right" :"-"+menu_width }).stop().animate({
|
58 |
+
"right":0,
|
59 |
+
},200);
|
60 |
+
|
61 |
+
} else if ( menuPosition == 'left' ){
|
62 |
+
jQuery('#wrap').stop().animate({
|
63 |
+
"margin-left":menu_width,
|
64 |
+
},200);
|
65 |
+
jQuery('header.siteHeader').stop().animate({
|
66 |
+
"left":menu_width,
|
67 |
+
},200);
|
68 |
+
jQuery('#navSection').css({"display":"block","width":menu_width, "left" :"-"+menu_width }).stop().animate({
|
69 |
+
"left":0,
|
70 |
+
},200,function(){
|
71 |
+
});
|
72 |
+
}
|
73 |
+
}
|
74 |
+
function slide_menu_close(menuPosition){
|
75 |
+
|
76 |
+
if ( !menuPosition ){
|
77 |
+
if ( jQuery('#navSection').hasClass('navSection_open_right') ){
|
78 |
+
menuPosition = 'right';
|
79 |
+
} else {
|
80 |
+
menuPosition = 'left';
|
81 |
+
}
|
82 |
+
}
|
83 |
+
|
84 |
+
var wrap_width = jQuery('body').width();
|
85 |
+
jQuery('#bodyInner').css({"width":wrap_width});
|
86 |
+
jQuery('#wrap').css({"width":wrap_width});
|
87 |
+
|
88 |
+
var menu_width = wrap_width - 60 + 'px';
|
89 |
+
|
90 |
+
jQuery('#wrap').stop().animate({ "margin-left":"0" },200);
|
91 |
+
jQuery('header.siteHeader').stop().animate({ "left":"0" },200);
|
92 |
+
|
93 |
+
if ( menuPosition == 'right' ) {jQuery('header.siteHeader').stop().animate({ "left":"0" },200);
|
94 |
+
jQuery('#navSection').stop().animate({ "right":"-"+menu_width },200,function(){
|
95 |
+
menuClose_common();
|
96 |
+
});
|
97 |
+
} else if ( menuPosition == 'left' ){
|
98 |
+
jQuery('#navSection').stop().animate({ "left":"-"+menu_width },200,function(){
|
99 |
+
menuClose_common();
|
100 |
+
});
|
101 |
+
}
|
102 |
+
}
|
103 |
+
function menuClose_common(){
|
104 |
+
// アニメーションが終わってから実行
|
105 |
+
jQuery('#navSection').removeClass('navSection_open_right');
|
106 |
+
jQuery('#navSection').removeClass('navSection_open_left');
|
107 |
+
jQuery('#navSection').css({ "right":"", "left":"", "display":"" });
|
108 |
+
jQuery('#headerTop').prependTo('header.siteHeader');
|
109 |
+
jQuery('#bodyInner').css({"width":""});
|
110 |
+
jQuery('#wrap').css({"width":""});
|
111 |
+
// judge animate execution
|
112 |
+
if(jQuery('#navSection').is(':animated')){
|
113 |
+
jQuery('#gMenu_outer').insertAfter('.navbar-header');
|
114 |
+
}
|
115 |
+
}
|
116 |
+
function run_menuResize(){
|
117 |
+
var wrap_width = jQuery('body').width();
|
118 |
+
jQuery('#bodyInner').css({"width":wrap_width});
|
119 |
+
// jQuery('#wrap').css({"width":wrap_width,"margin-left":"","margin-right":""});
|
120 |
+
// menuClose_common();
|
121 |
+
var headerHeight = jQuery('header.siteHeader').height;
|
122 |
+
jQuery('#top__fullcarousel').css({"margin-top":headerHeight});
|
123 |
+
if ( wrap_width > 991 ) {
|
124 |
+
slide_menu_close();
|
125 |
+
}
|
126 |
+
}
|
127 |
+
|
128 |
+
/*-------------------------------------------*/
|
129 |
+
/* スクロール時のサイドバー位置固定処理
|
130 |
+
/*-------------------------------------------*/
|
131 |
+
;(function($){
|
132 |
+
|
133 |
+
/* 読み込み / リサイズ時の処理
|
134 |
+
/*-------------------------------------------*/
|
135 |
+
jQuery(document).ready(function(){
|
136 |
+
|
137 |
+
});
|
138 |
+
jQuery(window).resize(function(){
|
139 |
+
|
140 |
+
});
|
141 |
+
jQuery(window).scroll(function(){
|
142 |
+
sideFix_scroll();
|
143 |
+
});
|
144 |
+
|
145 |
+
|
146 |
+
/* リセット処理
|
147 |
+
/*-------------------------------------------*/
|
148 |
+
function sideFix_reset(){
|
149 |
+
// サイドバー上部の余白をリセット
|
150 |
+
jQuery('.sideSection').css({ "margin-top" : "" });
|
151 |
+
// jQuery('.sideSection').css({ "position":"relative", "bottom":"", "left":"" });
|
152 |
+
}
|
153 |
+
|
154 |
+
/* スクロール時の処理
|
155 |
+
/*-------------------------------------------*/
|
156 |
+
function sideFix_scroll(){
|
157 |
+
|
158 |
+
if( !$('body').hasClass('sidebar-fix') ){ return; }
|
159 |
+
|
160 |
+
// 画面の幅を取得
|
161 |
+
var wrap_width = $('body').width();
|
162 |
+
// 画面の高を取得
|
163 |
+
var window_height = document.documentElement.clientHeight;
|
164 |
+
|
165 |
+
// 画面幅が狭い(1カラム)の場合
|
166 |
+
if ( wrap_width < 992 ) {
|
167 |
+
// リセット処理
|
168 |
+
sideFix_reset()
|
169 |
+
// 画面幅が広い(2カラム)の場合
|
170 |
+
} else {
|
171 |
+
|
172 |
+
// サイドバーの位置を取得
|
173 |
+
var sidebar_position_now = jQuery('.sideSection').offset();
|
174 |
+
// コンテンツエリアの位置を取得
|
175 |
+
var content_position_now = jQuery('.mainSection').offset();
|
176 |
+
|
177 |
+
// サイドバーの高さを取得
|
178 |
+
var sidebar_height = jQuery('.sideSection').outerHeight();
|
179 |
+
// メインコンテンツの高さを取得
|
180 |
+
var content_height = jQuery('.mainSection').outerHeight();
|
181 |
+
// メインコンテンツとサイドバーの高さの差
|
182 |
+
var height_difference = content_height - sidebar_height;
|
183 |
+
|
184 |
+
// サイドバー下端までの距離(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効) = コンテンツエリアの位置(高さ)+ サイドバーの高さ
|
185 |
+
var sidebar_bottom_position_default = content_position_now['top'] + sidebar_height;
|
186 |
+
// コンテンツアリア下端までの距離 = サイトバーの位置(高さ)+ コンテントエリアの高さ
|
187 |
+
var content_bottom_position_default = content_position_now['top'] + content_height;
|
188 |
+
|
189 |
+
// サイドバー下端までの距離 = サイトバーの位置(高さ)+ サイドバーの高さ
|
190 |
+
var sidebar_bottom_position_now = sidebar_position_now['top'] + sidebar_height;
|
191 |
+
// コンテンツアリア下端までの距離 = サイトバーの位置(高さ)+ コンテントエリアの高さ
|
192 |
+
var content_bottom_position_now = content_position_now['top'] + content_height;
|
193 |
+
|
194 |
+
|
195 |
+
/*
|
196 |
+
* 初期状態で画面からサイドバーがはみだしている場合( 画面の高さ < サイドバー下端までの距離 )
|
197 |
+
*/
|
198 |
+
if ( window_height < sidebar_bottom_position_default ) {
|
199 |
+
|
200 |
+
// 画面からはみ出しているサイドバーの高さ
|
201 |
+
var sidebar_over_size = sidebar_bottom_position_default - window_height;
|
202 |
+
|
203 |
+
// スクロール開始位置の状態ではみ出す量 = サイドバーの高さ - ウィンドウの高さ
|
204 |
+
var sidebar_over_size_start = sidebar_height - window_height;
|
205 |
+
|
206 |
+
/*
|
207 |
+
* 移動開始位置でもサイドバーが画面内からはみ出している場合
|
208 |
+
*/
|
209 |
+
if ( sidebar_height > window_height ) {
|
210 |
+
|
211 |
+
// スクロール開始位置の時点でサイドバーが画面からはみ出している量 = 移動開始スクロール値 + 移動開始時にはみ出している量 + 余白
|
212 |
+
var move_position_start = content_position_now['top'] + sidebar_over_size_start + 30;
|
213 |
+
|
214 |
+
// ★ サイドバーの移動終了スクロール値 = コンテンツエリアまでの高さ + はみ出していたコンテンツの高さ + 余白
|
215 |
+
var move_position_end = height_difference + content_position_now['top'] + sidebar_over_size_start + 30;
|
216 |
+
|
217 |
+
/*
|
218 |
+
* 移動開始位置ではサイドバーが画面内に収まっている場合
|
219 |
+
*/
|
220 |
+
} else {
|
221 |
+
|
222 |
+
// ★ サイドバーの移動開始スクロール値 = コンテンツエリアまでの高さ(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効)
|
223 |
+
var move_position_start = content_position_now['top'];
|
224 |
+
// ★ サイドバーの移動終了スクロール値 = メインコンテンツとサイドバーの高さの差 + コンテンツエリアまでの高さ(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効)
|
225 |
+
var move_position_end = height_difference + content_position_now['top'];
|
226 |
+
}
|
227 |
+
|
228 |
+
/*
|
229 |
+
* 初期状態で画面からはみだしていない場合( 画面の高さ > サイドバー下端までの距離 )
|
230 |
+
*/
|
231 |
+
} else {
|
232 |
+
|
233 |
+
// ★ サイドバーの移動開始スクロール値 = コンテンツエリアまでの高さ(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効)
|
234 |
+
var move_position_start = content_position_now['top'];
|
235 |
+
// ★ サイドバーの移動終了スクロール値 = メインコンテンツとサイドバーの高さの差 + コンテンツエリアまでの高さ(サイドバー上部とコンテンツエリア上部が同じ位置の場合のみ有効)
|
236 |
+
var move_position_end = height_difference + content_position_now['top'];
|
237 |
+
|
238 |
+
} // if ( sideFix.window_height < sidebar_bottom_position_default ) {
|
239 |
+
|
240 |
+
|
241 |
+
/* スクロール動作条件
|
242 |
+
/*-------------------------------------------*/
|
243 |
+
// サイドバーがメインコンテンツよりも高い場合は処理しない
|
244 |
+
if ( sidebar_height > content_height ){ return; }
|
245 |
+
|
246 |
+
// スクロール量を取得
|
247 |
+
var scrollHeight = window.pageYOffset;
|
248 |
+
|
249 |
+
// console.log('content_bottom_position_now : ' + content_bottom_position_now + ' / sidebar_bottom_position_now : ' + sidebar_bottom_position_now );
|
250 |
+
// console.log('move_position_end : ' + move_position_end + ' / scrollHeight : ' + scrollHeight );
|
251 |
+
// console.log('move_position_end : ' + move_position_end + ' / scrollHeight : ' + scrollHeight );
|
252 |
+
|
253 |
+
|
254 |
+
// スクロール量がサイドバーの移動開始スクロール値より少ない場合
|
255 |
+
if ( scrollHeight < move_position_start ){
|
256 |
+
// リセット処理
|
257 |
+
sideFix_reset();
|
258 |
+
|
259 |
+
// スクロール量がサイドバーの移動開始スクロール値より大きい場合
|
260 |
+
} else {
|
261 |
+
|
262 |
+
// スクロールの高さより サイドバーの移動終了スクロール値 が大きい場合のみ処理する
|
263 |
+
// if ( content_bottom_position_now > sidebar_bottom_position_now ){ // これがないと延々とスクロールする
|
264 |
+
if ( scrollHeight < move_position_end ){ // これがないと延々とスクロールする
|
265 |
+
|
266 |
+
// 移動開始
|
267 |
+
|
268 |
+
// サイドバー上部に追加する余白 = スクロール量 - サイドバーの移動開始スクロール値
|
269 |
+
var yohaku = scrollHeight - move_position_start;
|
270 |
+
// サイドバー上部に余白を追加
|
271 |
+
jQuery('.sideSection').css({ "margin-top" : yohaku });
|
272 |
+
// jQuery('.sideSection').css({ "position":"fixed", "bottom":"30", "left":sidebar_position_now['left'],"width":sideFix.sidebar_width });
|
273 |
+
|
274 |
+
} else {
|
275 |
+
// スクロール量が終了ポイントを過ぎた時、下端が揃わないので強制的に揃える
|
276 |
+
var yohaku = content_height - sidebar_height;
|
277 |
+
jQuery('.sideSection').css({ "margin-top" : yohaku });
|
278 |
+
} // if ( scrollHeight < move_position_start ){
|
279 |
+
}
|
280 |
+
} // if ( sideFix.wrap_width < 992 ) {
|
281 |
+
|
282 |
+
}
|
283 |
+
|
284 |
+
})(jQuery);
|
js/lightning-adv.min.js
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
jQuery(document).ready(function(){if(!jQuery('body').hasClass('menu-slide')){return;}
|
3 |
+
run_slide_menu_control();});jQuery(window).resize(function(){if(!jQuery('body').hasClass('menu-slide')){return;}
|
4 |
+
run_menuResize();});function run_slide_menu_control(){jQuery('.menuBtn').prependTo('#bodyInner');jQuery('.menuBtn').each(function(){jQuery(this).click(function(){if(jQuery(this).hasClass('menuBtn_left')){var menuPosition='left';}else{var menuPosition='right';}
|
5 |
+
if(jQuery(this).hasClass('menuOpen')){slide_menu_open(menuPosition);}else{slide_menu_close(menuPosition);}});});}
|
6 |
+
function slide_menu_open(menuPosition){var navSection_open_position='navSection_open_'+menuPosition;jQuery('#navSection').addClass(navSection_open_position);var wrap_width=jQuery('body').width();jQuery('#bodyInner').css({"width":wrap_width});jQuery('#wrap').css({"width":wrap_width});var menu_width=wrap_width-60+'px';jQuery('#headerTop').appendTo('#navSection');jQuery('#gMenu_outer').appendTo('#navSection');if(menuPosition=='right'){jQuery('#wrap').stop().animate({"margin-left":"-"+menu_width,},200);jQuery('header.siteHeader').stop().animate({"left":"-"+menu_width,},200);jQuery('#navSection').css({"display":"block","width":menu_width,"right":"-"+menu_width}).stop().animate({"right":0,},200);}else if(menuPosition=='left'){jQuery('#wrap').stop().animate({"margin-left":menu_width,},200);jQuery('header.siteHeader').stop().animate({"left":menu_width,},200);jQuery('#navSection').css({"display":"block","width":menu_width,"left":"-"+menu_width}).stop().animate({"left":0,},200,function(){});}}
|
7 |
+
function slide_menu_close(menuPosition){if(!menuPosition){if(jQuery('#navSection').hasClass('navSection_open_right')){menuPosition='right';}else{menuPosition='left';}}
|
8 |
+
var wrap_width=jQuery('body').width();jQuery('#bodyInner').css({"width":wrap_width});jQuery('#wrap').css({"width":wrap_width});var menu_width=wrap_width-60+'px';jQuery('#wrap').stop().animate({"margin-left":"0"},200);jQuery('header.siteHeader').stop().animate({"left":"0"},200);if(menuPosition=='right'){jQuery('header.siteHeader').stop().animate({"left":"0"},200);jQuery('#navSection').stop().animate({"right":"-"+menu_width},200,function(){menuClose_common();});}else if(menuPosition=='left'){jQuery('#navSection').stop().animate({"left":"-"+menu_width},200,function(){menuClose_common();});}}
|
9 |
+
function menuClose_common(){jQuery('#navSection').removeClass('navSection_open_right');jQuery('#navSection').removeClass('navSection_open_left');jQuery('#navSection').css({"right":"","left":"","display":""});jQuery('#headerTop').prependTo('header.siteHeader');jQuery('#bodyInner').css({"width":""});jQuery('#wrap').css({"width":""});if(jQuery('#navSection').is(':animated')){jQuery('#gMenu_outer').insertAfter('.navbar-header');}}
|
10 |
+
function run_menuResize(){var wrap_width=jQuery('body').width();jQuery('#bodyInner').css({"width":wrap_width});var headerHeight=jQuery('header.siteHeader').height;jQuery('#top__fullcarousel').css({"margin-top":headerHeight});if(wrap_width>991){slide_menu_close();}};(function($){jQuery(document).ready(function(){});jQuery(window).resize(function(){});jQuery(window).scroll(function(){sideFix_scroll();});function sideFix_reset(){jQuery('.sideSection').css({"margin-top":""});}
|
11 |
+
function sideFix_scroll(){if(!$('body').hasClass('sidebar-fix')){return;}
|
12 |
+
var wrap_width=$('body').width();var window_height=document.documentElement.clientHeight;if(wrap_width<992){sideFix_reset()}else{var sidebar_position_now=jQuery('.sideSection').offset();var content_position_now=jQuery('.mainSection').offset();var sidebar_height=jQuery('.sideSection').outerHeight();var content_height=jQuery('.mainSection').outerHeight();var height_difference=content_height-sidebar_height;var sidebar_bottom_position_default=content_position_now['top']+sidebar_height;var content_bottom_position_default=content_position_now['top']+content_height;var sidebar_bottom_position_now=sidebar_position_now['top']+sidebar_height;var content_bottom_position_now=content_position_now['top']+content_height;if(window_height<sidebar_bottom_position_default){var sidebar_over_size=sidebar_bottom_position_default-window_height;var sidebar_over_size_start=sidebar_height-window_height;if(sidebar_height>window_height){var move_position_start=content_position_now['top']+sidebar_over_size_start+30;var move_position_end=height_difference+content_position_now['top']+sidebar_over_size_start+30;}else{var move_position_start=content_position_now['top'];var move_position_end=height_difference+content_position_now['top'];}}else{var move_position_start=content_position_now['top'];var move_position_end=height_difference+content_position_now['top'];}
|
13 |
+
if(sidebar_height>content_height){return;}
|
14 |
+
var scrollHeight=window.pageYOffset;if(scrollHeight<move_position_start){sideFix_reset();}else{if(scrollHeight<move_position_end){var yohaku=scrollHeight-move_position_start;jQuery('.sideSection').css({"margin-top":yohaku});}else{var yohaku=content_height-sidebar_height;jQuery('.sideSection').css({"margin-top":yohaku});}}}}})(jQuery);
|
js/lightning_adv_admin.js
DELETED
File without changes
|
languages/lightning-adv-unit-ja.mo
CHANGED
Binary file
|
languages/lightning-adv-unit-ja.po
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: \n"
|
4 |
-
"POT-Creation-Date: 2017-
|
5 |
"PO-Revision-Date: \n"
|
6 |
"Last-Translator: Kurudrive <kurudrive@gmail.com>\n"
|
7 |
"Language-Team: Vektor translate Team <info@vektor-inc.co.jp>\n"
|
@@ -45,6 +45,10 @@ msgstr ""
|
|
45 |
"サイドバーに表示されるページリストを全て表示せずにアクティブでない階層を非表"
|
46 |
"示にする"
|
47 |
|
|
|
|
|
|
|
|
|
48 |
#: ../inc/sidebar-position.php:14
|
49 |
msgid "Sidebar position ( PC mode )"
|
50 |
msgstr "サイドバーの位置(PC閲覧時)"
|
@@ -96,7 +100,7 @@ msgstr "コンテンツエリア投稿リスト"
|
|
96 |
|
97 |
#: ../inc/widgets/widget-new-posts.php:17
|
98 |
msgid "Displays a list of your most recent posts"
|
99 |
-
msgstr "
|
100 |
|
101 |
#: ../inc/widgets/widget-new-posts.php:49
|
102 |
#: ../inc/widgets/widget-new-posts.php:225
|
@@ -178,18 +182,6 @@ msgstr "リンク先URL:"
|
|
178 |
msgid "Notation text:"
|
179 |
msgstr "表記テキスト:"
|
180 |
|
181 |
-
#: ../node_modules/rx/dist/rx.min.js:1
|
182 |
-
msgid "N"
|
183 |
-
msgstr ""
|
184 |
-
|
185 |
-
#: ../node_modules/rx/dist/rx.min.js:1
|
186 |
-
msgid "E"
|
187 |
-
msgstr ""
|
188 |
-
|
189 |
-
#: ../node_modules/rx/dist/rx.min.js:1
|
190 |
-
msgid "C"
|
191 |
-
msgstr ""
|
192 |
-
|
193 |
#~ msgid "Order by"
|
194 |
#~ msgstr "表示順"
|
195 |
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: \n"
|
4 |
+
"POT-Creation-Date: 2017-12-04 00:47+0900\n"
|
5 |
"PO-Revision-Date: \n"
|
6 |
"Last-Translator: Kurudrive <kurudrive@gmail.com>\n"
|
7 |
"Language-Team: Vektor translate Team <info@vektor-inc.co.jp>\n"
|
45 |
"サイドバーに表示されるページリストを全て表示せずにアクティブでない階層を非表"
|
46 |
"示にする"
|
47 |
|
48 |
+
#: ../inc/sidebar-fix/sidebar-fix.php:14
|
49 |
+
msgid "Don't fix the sidebar"
|
50 |
+
msgstr "サイドバーを固定しない"
|
51 |
+
|
52 |
#: ../inc/sidebar-position.php:14
|
53 |
msgid "Sidebar position ( PC mode )"
|
54 |
msgstr "サイドバーの位置(PC閲覧時)"
|
100 |
|
101 |
#: ../inc/widgets/widget-new-posts.php:17
|
102 |
msgid "Displays a list of your most recent posts"
|
103 |
+
msgstr "最新の投稿記事リストを表示します"
|
104 |
|
105 |
#: ../inc/widgets/widget-new-posts.php:49
|
106 |
#: ../inc/widgets/widget-new-posts.php:225
|
182 |
msgid "Notation text:"
|
183 |
msgstr "表記テキスト:"
|
184 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
185 |
#~ msgid "Order by"
|
186 |
#~ msgstr "表示順"
|
187 |
|
lightning_advanced_unit.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Plugin Name: Lightning Advanced Unit
|
4 |
* Plugin URI: http://lightning.vektor-inc.co.jp/
|
5 |
-
* Version: 2.
|
6 |
* Author: Vektor,Inc.
|
7 |
* Author URI: http://www.vektor-inc.co.jp
|
8 |
* Description: This is a plug-ins that extend the functionality of the theme "Lightning".
|
@@ -39,6 +39,7 @@ require_once( LIGHTNING_ADVANCED_DIR . 'inc/menu-btn-position.php' );
|
|
39 |
require_once( LIGHTNING_ADVANCED_DIR . 'inc/sidebar-position.php' );
|
40 |
require_once( LIGHTNING_ADVANCED_DIR . 'inc/sidebar-child-list-hidden.php' );
|
41 |
require_once( LIGHTNING_ADVANCED_DIR . 'inc/widgets/widget-full-wide-title.php' );
|
|
|
42 |
|
43 |
/*-------------------------------------------*/
|
44 |
/* translations
|
@@ -49,3 +50,12 @@ function lightning_adv_unit_textdomain() {
|
|
49 |
add_action( 'plugins_loaded', 'lightning_adv_unit_textdomain' );
|
50 |
|
51 |
} // if ( $template == 'lightning' ){
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
/**
|
3 |
* Plugin Name: Lightning Advanced Unit
|
4 |
* Plugin URI: http://lightning.vektor-inc.co.jp/
|
5 |
+
* Version: 2.6.0
|
6 |
* Author: Vektor,Inc.
|
7 |
* Author URI: http://www.vektor-inc.co.jp
|
8 |
* Description: This is a plug-ins that extend the functionality of the theme "Lightning".
|
39 |
require_once( LIGHTNING_ADVANCED_DIR . 'inc/sidebar-position.php' );
|
40 |
require_once( LIGHTNING_ADVANCED_DIR . 'inc/sidebar-child-list-hidden.php' );
|
41 |
require_once( LIGHTNING_ADVANCED_DIR . 'inc/widgets/widget-full-wide-title.php' );
|
42 |
+
require_once( LIGHTNING_ADVANCED_DIR . 'inc/sidebar-fix/sidebar-fix.php' );
|
43 |
|
44 |
/*-------------------------------------------*/
|
45 |
/* translations
|
50 |
add_action( 'plugins_loaded', 'lightning_adv_unit_textdomain' );
|
51 |
|
52 |
} // if ( $template == 'lightning' ){
|
53 |
+
|
54 |
+
/*-------------------------------------------*/
|
55 |
+
/* Load js & CSS
|
56 |
+
/*-------------------------------------------*/
|
57 |
+
add_action( 'wp_enqueue_scripts','lightning_adv_unit_script',100 );
|
58 |
+
function lightning_adv_unit_script() {
|
59 |
+
wp_register_script( 'lightning_adv_unit_script' , LIGHTNING_ADVANCED_URL.'js/lightning-adv.min.js', array( 'jquery','lightning-js' ), LIGHTNING_ADVANCED_VERSION );
|
60 |
+
wp_enqueue_script( 'lightning_adv_unit_script' );
|
61 |
+
}
|
package.json
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lightning-advanced-unit",
|
3 |
+
"version": "2.5.0",
|
4 |
+
"description": "",
|
5 |
+
"main": "gulpfile.js",
|
6 |
+
"directories": {
|
7 |
+
"test": "tests"
|
8 |
+
},
|
9 |
+
"scripts": {
|
10 |
+
"test": "echo \"Error: no test specified\" && exit 1"
|
11 |
+
},
|
12 |
+
"repository": {
|
13 |
+
"type": "git",
|
14 |
+
"url": "git+https://github.com/vektor-inc/lightning-advanced-unit.git"
|
15 |
+
},
|
16 |
+
"author": "",
|
17 |
+
"license": "ISC",
|
18 |
+
"bugs": {
|
19 |
+
"url": "https://github.com/vektor-inc/lightning-advanced-unit/issues"
|
20 |
+
},
|
21 |
+
"homepage": "https://github.com/vektor-inc/lightning-advanced-unit#readme",
|
22 |
+
"devDependencies": {
|
23 |
+
"gulp": "^3.9.1",
|
24 |
+
"gulp-concat": "^2.6.1",
|
25 |
+
"gulp-cssmin": "^0.2.0",
|
26 |
+
"gulp-jsmin": "^0.1.5",
|
27 |
+
"gulp-plumber": "^1.1.0",
|
28 |
+
"gulp-rename": "^1.2.2",
|
29 |
+
"gulp.spritesmith": "^6.7.0",
|
30 |
+
"run-sequence": "^2.1.0"
|
31 |
+
}
|
32 |
+
}
|
readme.txt
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
Contributors: vektor-inc,bizvektor,kurudrive
|
3 |
Donate link:
|
4 |
Tags: Lightning,
|
5 |
-
Requires at least: 4.
|
6 |
-
Tested up to: 4.
|
7 |
-
Stable tag: 2.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -44,6 +44,9 @@ e.g.
|
|
44 |
|
45 |
== Changelog ==
|
46 |
|
|
|
|
|
|
|
47 |
= 2.5.0 =
|
48 |
* [ Add function ][ Fuull wide Widget ] Add text shadow.
|
49 |
|
2 |
Contributors: vektor-inc,bizvektor,kurudrive
|
3 |
Donate link:
|
4 |
Tags: Lightning,
|
5 |
+
Requires at least: 4.5
|
6 |
+
Tested up to: 4.9.1
|
7 |
+
Stable tag: 2.6.0
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
44 |
|
45 |
== Changelog ==
|
46 |
|
47 |
+
= 2.6.0 =
|
48 |
+
* [ Add function ] sidebar fix
|
49 |
+
|
50 |
= 2.5.0 =
|
51 |
* [ Add function ][ Fuull wide Widget ] Add text shadow.
|
52 |
|