晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/rainic/www/oldTZh/wp-content/plugins/powerpack-elements/assets/js/ |
Upload File : |
(function($) {
PPTimeline = function( settings, $scope ) {
this.node = $scope;
this.timeline = this.node.find('.pp-timeline');
this.items = this.node.find('.pp-timeline-vertical .pp-timeline-item');
this.connector = this.node.find('.pp-timeline-vertical .pp-timeline-connector');
this.progressBar = this.node.find('.pp-timeline-vertical .pp-timeline-connector-inner');
this.markerClass = this.node.find('.pp-timeline-vertical .pp-timeline-marker-wrapper');
if ( 'undefined' !== typeof settings.window ) {
this.window = settings.window;
}
this.init();
};
PPTimeline.prototype = {
node: '',
items: '',
connector: '',
progressBar: '',
window: $(window),
winHeight: 0,
scrollTop: 0,
lastWinHeight: -1,
lastScrollTop: -1,
isScrolling: false,
isResizing: false,
isAnimating: false,
animationClass: 'bounce-in',
init: function()
{
var timeline_layout = this.timeline.data('timeline-layout');
if ( timeline_layout == 'vertical' ) {
this.winHeight = $(window).height();
this.scrollTop = this.window.scrollTop();
this.bindEvents();
this.requestAnimation();
this.revealItems();
}
},
bindEvents: function()
{
this.window.on( 'scroll', $.proxy( function() {
this.scrollTop = this.window.scrollTop();
this.requestAnimation();
this.revealItems();
}, this ) );
$(window).on( 'resize', $.proxy( function() {
this.scrollTop = this.window.scrollTop();
this.winHeight = $(window).height();
this.requestAnimation();
}, this ) );
},
requestAnimation: function()
{
if ( ! this.isAnimating ) {
var frameId = requestAnimationFrame( this.reboot.bind(this) );
}
this.isAnimating = true;
},
revealItems: function()
{
var self = this;
this.items.each( function() {
if ( ( $(this).offset().top <= ( self.window.scrollTop() + $(window).outerHeight() * 0.95 ) ) && $(this).hasClass('pp-timeline-item-hidden') ) {
$(this).removeClass('pp-timeline-item-hidden').addClass( self.animationClass );
}
} );
},
setup: function()
{
var self = this,
lastMarkerHeight = this.items.last().find( this.markerClass ).outerHeight();
this.connector.css({
'top': self.items.first().find( self.markerClass ).offset().top - self.items.first().offset().top,
'bottom': ( self.node.offset().top + self.node.outerHeight() ) - self.items.last().find( self.markerClass ).offset().top - ( lastMarkerHeight / 2 )
});
},
reboot: function()
{
this.isAnimating = false;
if ( this.winHeight !== this.lastWinHeight ) {
this.setup();
}
this.start.bind( this )();
},
start: function()
{
if ( this.scrollTop !== this.lastScrollTop || this.winHeight !== this.lastWinHeight ) {
this.lastScrollTop = this.scrollTop;
this.lastWinHeight = this.winHeight;
this.progress();
}
},
progress: function()
{
var self = this,
win = $(window);
this.items.each( function() {
if ( $(this).find( self.markerClass ).offset().top < ( self.window.scrollTop() + win.outerHeight() / 2 ) ) {
$(this).addClass('pp-timeline-item-active');
} else {
$(this).removeClass('pp-timeline-item-active');
}
} );
var lastMarkerPos = this.items.last().find( this.markerClass ).offset().top,
lastMarkerHeight = this.items.last().find( this.markerClass ).outerHeight(),
progressPos = ( this.window.scrollTop() - this.progressBar.offset().top ) + ( win.outerHeight() / 2 );
if ( lastMarkerPos <= ( this.window.scrollTop() + win.outerHeight() / 2 ) ) {
progressPos = lastMarkerPos - this.progressBar.offset().top;
}
progressPos = progressPos + ( lastMarkerHeight / 2 );
this.progressBar.css( 'height', progressPos + 'px' );
}
};
})(jQuery);