Ticket #30366: 30366.4.patch
File 30366.4.patch, 5.3 KB (added by , 10 years ago) |
---|
-
src/wp-content/themes/twentyfifteen/header.php
47 47 48 48 <?php get_sidebar(); ?> 49 49 </div><!-- .sidebar --> 50 51 <div id="content" class="site-content"> 50 51 <div id="main-wrapper" class="main-wrapper"> 52 <div id="content" class="site-content"> 53 No newline at end of file -
src/wp-content/themes/twentyfifteen/js/functions.js
6 6 */ 7 7 8 8 ( function( $ ) { 9 var $body, $window, $document, $ sidebar, adminbarOffset, top = false,9 var $body, $window, $document, $mainWrapper, $sidebar, adminbarOffset, top = false, 10 10 bottom = false, windowWidth, windowHeight, lastWindowPos = 0, 11 11 topOffset = 0, documentHeight, sidebarWidth, sidebarHeight, resizeTimer; 12 12 … … 55 55 windowWidth = $window.width(); 56 56 windowHeight = $window.height(); 57 57 documentHeight = $document.height(); 58 mainWrapperHeight = $mainWrapper.height(); 58 59 sidebarHeight = $sidebar.height(); 59 60 60 61 if ( 955 >= windowWidth ) { 61 62 top = bottom = false; 62 63 $sidebar.removeAttr( 'style' ); 64 $mainWrapper.removeAttr( 'style' ); 63 65 } 64 66 } 65 67 66 68 function scroll() { 67 var windowPos = $window.scrollTop(); 68 69 if ( 955 <= windowWidth && sidebarHeight + adminbarOffset < documentHeight ) { 70 if ( sidebarHeight + adminbarOffset > windowHeight ) { 69 var windowPos, $pane, paneHeight; 70 windowPos = $window.scrollTop(); 71 $pane = ( sidebarHeight > mainWrapperHeight ) ? $mainWrapper : $sidebar; 72 paneHeight = $pane.height(); 73 74 if ( 955 <= windowWidth && paneHeight + adminbarOffset < documentHeight ) { 75 if ( paneHeight + adminbarOffset > windowHeight ) { 71 76 if ( windowPos > lastWindowPos ) { 72 77 if ( top ) { 73 78 top = false; 74 topOffset = ( $ sidebar.offset().top > 0 ) ? $sidebar.offset().top - adminbarOffset : 0;75 $ sidebar.attr( 'style', 'top: ' + topOffset + 'px;' );76 } else if ( ! bottom && windowPos + windowHeight > sidebarHeight + $sidebar.offset().top ) {79 topOffset = ( $pane.offset().top > 0 ) ? $pane.offset().top - adminbarOffset : 0; 80 $pane.attr( 'style', 'top: ' + topOffset + 'px;' ); 81 } else if ( ! bottom && windowPos + windowHeight > paneHeight + $pane.offset().top ) { 77 82 bottom = true; 78 $ sidebar.attr( 'style', 'position: fixed;bottom: 0;' );83 $pane.attr( 'style', 'position: fixed;bottom: 0;' ); 79 84 } 80 85 } else if ( windowPos < lastWindowPos ) { 81 86 if ( bottom ) { 82 87 bottom = false; 83 topOffset = ( $ sidebar.offset().top > 0 ) ? $sidebar.offset().top - adminbarOffset : 0;84 $ sidebar.attr( 'style', 'top: ' + topOffset + 'px;' );85 } else if ( ! top && windowPos + adminbarOffset < $ sidebar.offset().top ) {88 topOffset = ( $pane.offset().top > 0 ) ? $pane.offset().top - adminbarOffset : 0; 89 $pane.attr( 'style', 'top: ' + topOffset + 'px;' ); 90 } else if ( ! top && windowPos + adminbarOffset < $pane.offset().top ) { 86 91 top = true; 87 $ sidebar.attr( 'style', 'position: fixed;' );92 $pane.attr( 'style', 'position: fixed;' ); 88 93 } 89 94 } else { 90 95 top = bottom = false; 91 topOffset = ( $ sidebar.offset().top > 0 ) ? $sidebar.offset().top - adminbarOffset : 0;92 $ sidebar.attr( 'style', 'top: ' + topOffset + 'px;' );96 topOffset = ( $pane.offset().top > 0 ) ? $pane.offset().top - adminbarOffset : 0; 97 $pane.attr( 'style', 'top: ' + topOffset + 'px;' ); 93 98 } 94 99 } else if ( ! top ) { 95 100 top = true; 96 $ sidebar.attr( 'style', 'position: fixed;' );101 $pane.attr( 'style', 'position: fixed;' ); 97 102 } 98 103 } 99 104 … … 109 114 $body = $( 'body' ); 110 115 $window = $( window ); 111 116 $document = $( document ); 112 $sidebar = $( '#sidebar' ).first(); 117 $mainWrapper = $( '#main-wrapper' ).first(); 118 $sidebar = $( '#sidebar' ).first(); 113 119 adminbarOffset = $body.is( '.admin-bar' ) ? $( '#wpadminbar' ).height() : 0; 114 120 115 121 $window 116 122 .on( 'scroll.twentyfifteen', scroll ) 117 123 .on( 'resize.twentyfifteen', function() { -
src/wp-content/themes/twentyfifteen/style.css
1271 1271 .comment-content:after, 1272 1272 .site-content:before, 1273 1273 .site-content:after, 1274 .main-wrapper:before, 1275 .main-wrapper:after, 1274 1276 .nav-links:before, 1275 1277 .nav-links:after, 1276 1278 .comment-navigation:before, … … 1288 1290 .entry-content:after, 1289 1291 .comment-content:after, 1290 1292 .site-content:after, 1293 .main-wrapper:after, 1291 1294 .nav-links:after, 1292 1295 .comment-navigation:after, 1293 1296 .social-navigation ul:after, … … 3967 3970 padding: 8.3333% 0; 3968 3971 } 3969 3972 3970 . site-content{3973 .main-wrapper { 3971 3974 display: block; 3972 3975 float: left; 3973 3976 margin-left: 29.4118%; 3974 3977 width: 70.5882%; 3978 position: relative; 3979 margin-bottom: 1.6em; 3980 z-index: 10; 3975 3981 } 3976 3982 3977 3983 body { … … 4562 4568 } 4563 4569 4564 4570 .site-footer { 4565 float: left; 4566 margin: 0 0 0 35.2941%; 4571 display: block; 4567 4572 padding: 0; 4568 width: 58.8235%;4569 4573 } 4570 4574 4571 4575 .site-info {