1
0
Fork 0
mirror of https://github.com/dillonzq/LoveIt.git synced 2025-04-27 06:06:20 +02:00

feat: CDN for public js lib

This commit is contained in:
Dillon 2019-08-07 12:31:14 +08:00
parent 3b279e7981
commit cf4b33aed3
9 changed files with 109 additions and 77 deletions

View file

@ -6,7 +6,7 @@
* @sksmatt
*
*/
var mv_dynamic_to_top = {"text":"0","version":"0","min":"200","speed":"1000","easing":"easeInOutExpo","margin":"20"};
var mv_dynamic_to_top = {"text":"0","version":"0","min":"200","speed":"300","easing":"easeInOutExpo","margin":"20"};
(function($,mv_dynamic_to_top){jQuery.fn.DynamicToTop=function(options){var defaults={text:mv_dynamic_to_top.text,min:parseInt(mv_dynamic_to_top.min,10),fade_in:600,fade_out:400,speed:parseInt(mv_dynamic_to_top.speed,10),easing:mv_dynamic_to_top.easing,version:mv_dynamic_to_top.version,id:'dynamic-to-top'},settings=$.extend(defaults,options);if(settings.version===""||settings.version==='0'){settings.text='<span>&nbsp;</span>';}
if(!$.isFunction(settings.easing)){settings.easing='linear';}
var $toTop=$('<a href=\"#\" id=\"'+settings.id+'\"></a>').html(settings.text);$toTop.hide().appendTo('body').click(function(){$('html, body').stop().animate({scrollTop:0},settings.speed,settings.easing);return false;});$(window).scroll(function(){var sd=jQuery(window).scrollTop();if(typeof document.body.style.maxHeight==="undefined"){$toTop.css({'position':'absolute','top':sd+$(window).height()-mv_dynamic_to_top.margin});}

File diff suppressed because one or more lines are too long

2
assets/js/jquery.slim.min.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,54 +1,54 @@
$(document).ready(function() {
let items = [];
$('.post-content figure').each(function() {
if ($(this).attr('class') == 'gallery-ignore') return true; // ignore any figures where class="pswp-ignore"
// get properties from child a/img/figcaption elements,
let $figure = $(this),
$img = $figure.find('img'),
$src = $img.attr('data-src'),
$title = $figure.find('figcaption').html();
$(document).ready(function () {
let items = [];
$('.post-content figure').each(function () {
if ($(this).attr('class') == 'gallery-ignore') return true; // ignore any figures where class="pswp-ignore"
// get properties from child a/img/figcaption elements,
let $figure = $(this),
$img = $figure.find('img'),
$src = $img.attr('data-src'),
$title = $figure.find('figcaption').html();
if ($img.data('size')) {
let $size = $a.data('size').split('x');
var item = {
'src': $src,
'thumb': $src,
'subHtml': $title,
'width': $size[0],
'height': $size[1]
}
}else{
var item = {
'src': $src,
'thumb': $src,
'subHtml': $title
}
var img = new Image();
img.src = $src;
var wait = setInterval(function() {
var w = img.naturalWidth,
h = img.naturalHeight;
if (w && h) {
clearInterval(wait);
item.width = w;
item.height = h;
}
}, 30);
}
var index = items.length;
items.push(item);
if ($img.data('size')) {
let $size = $a.data('size').split('x');
var item = {
'src': $src,
'thumb': $src,
'subHtml': $title,
'width': $size[0],
'height': $size[1]
}
} else {
var item = {
'src': $src,
'thumb': $src,
'subHtml': $title
}
var img = new Image();
img.src = $src;
var wait = setInterval(function () {
var w = img.naturalWidth,
h = img.naturalHeight;
if (w && h) {
clearInterval(wait);
item.width = w;
item.height = h;
}
}, 30);
}
var index = items.length;
items.push(item);
// console.log(item)
$figure.on('click', function(event) {
event.preventDefault();
$(this).lightGallery({
dynamic: true,
download: false,
showThumbByDefault: false,
dynamicEl: items,
index: index
})
});
});
});
$figure.on('click', function (event) {
event.preventDefault();
$(this).lightGallery({
dynamic: true,
download: false,
showThumbByDefault: false,
dynamicEl: items,
index: index
})
});
});
});

File diff suppressed because one or more lines are too long

4
assets/js/version Normal file
View file

@ -0,0 +1,4 @@
jQuery 3.4.1 https://github.com/jquery/jquery/releases
lazysizes 5.1.1 https://github.com/aFarkas/lazysizes/releases
lightGallery 1.6.12 https://github.com/sachinchoolur/lightGallery/releases
prettify 2013.03.04 https://github.com/google/code-prettify/releases

View file

@ -1,32 +1,53 @@
{{ $cdn_url := .Scratch.Get "cdn_url" }}
{{ $postHasImages := .Scratch.Get "postHasImages"}}
{{ $jquery := resources.Get "/js/jquery.min.js" }}
{{ $lazysizes := resources.Get "/js/lazysizes.min.js"}}
{{ $prettify := resources.Get "/js/prettify.min.js" }}
{{ $dynamic := resources.Get "/js/dynamic.to.top.min.js" }}
{{ $main := resources.Get "/js/main.js" }}
{{ $lightGallery := resources.Get "/js/lightGallery-all.min.js" }}
{{ $scripts := resources.Get "/js/main.js" | slice }}
{{ $dynamicToTop := resources.Get "/js/dynamicToTop.min.js" }}
{{ $lightGallery_init := resources.Get "/js/lightGallery-init.js" }}
{{ $jquery := `
<script src="https://cdn.jsdelivr.net/npm/jquery@3.4.1/dist/jquery.slim.min.js" integrity="sha256-pasqAKBDmFT4eHoN2ndd6lN370kFiGUFyTiUHWhU7k8=" crossorigin="anonymous"></script>
` }}
{{ $prettify := `
<script src="https://cdn.jsdelivr.net/npm/code-prettify@0.1.0/src/prettify.js" integrity="sha256-w3n8zE0N1lx/nrrWA16Dk7KnySbJF7cPs5E2CByeB7A=" crossorigin="anonymous"></script>
` }}
{{ $lightGallery := `
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/lightgallery@1.6.12/dist/css/lightgallery.min.css" integrity="sha256-8rfHbJr+ju3Oc099jFJMR1xAPu8CTPHU8uP5J3X/VAY=" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/lightgallery@1.6.12/dist/js/lightgallery-all.min.js" integrity="sha256-w14QFJrxOYkUnF0hb8pVFCSgYcsF0hMIKrqGb8A7J8A=" crossorigin="anonymous"></script>
` }}
{{ $lazysizes := `
<script src="https://cdn.jsdelivr.net/npm/lazysizes@5.1.1/lazysizes.min.js" integrity="sha256-6zKmNZVeImc0d1Y55vm4So/0W5mbwWiPS4zJt3F4t2A=" crossorigin="anonymous"></script>
` }}
{{ $katex := `
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.10.2/dist/katex.min.css" integrity="sha384-yFRtMMDnQtDRO8rLpMIKrtPCD5jdktao2TV19YiZYWMDkUR5GQZR/NOVTdquEx1j" crossorigin="anonymous">
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.2/dist/katex.min.js" integrity="sha384-9Nhn55MVVN0/4OFx7EE5kpFBPsEMZxKTCnA+4fqDmg12eCTqGi6+BB2LjY8brQxJ" crossorigin="anonymous"></script>
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.2/dist/contrib/auto-render.min.js" integrity="sha384-kWPLUVMOks5AQFrykwIup5lo0m3iMkkHrD0uJ4H5cjeGihAutqP0yW0J6dpFiVkI" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script>
` }}
<!-- jQuery -->
{{ $jquery | safeHTML }}
{{ if .IsPage }}
{{ $prettify | safeHTML }}
{{ $scripts = $scripts | append $dynamicToTop }}
{{ if $postHasImages }}
<link href="https://cdn.bootcss.com/lightgallery/1.6.12/css/lightgallery.min.css" rel="stylesheet">
{{ $vendorScript := slice $jquery $lazysizes $prettify $dynamic $main $lightGallery $lightGallery_init | resources.Concat "/js/vendor_gallery.js" | resources.Minify }}
<script src="{{ printf "%s%s" $cdn_url $vendorScript.RelPermalink }}" async=""></script>
{{ $lightGallery | safeHTML }}
{{ $lazysizes | safeHTML }}
{{ $scripts = $scripts | append $lightGallery_init }}
{{ $scripts = $scripts | resources.Concat "/js/vendor_gallery.js" | resources.Minify }}
{{ else }}
{{ $vendorScript := slice $jquery $prettify $dynamic $main | resources.Concat "/js/vendor_no_gallery.js" | resources.Minify }}
<script src="{{ printf "%s%s" $cdn_url $vendorScript.RelPermalink }}" async=""></script>
{{ $scripts = $scripts | resources.Concat "/js/vendor_no_gallery.js" | resources.Minify }}
{{ end }}
<!-- KaTeX -->
{{ if or .Params.Math .Site.Params.Math }}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.10.2/dist/katex.min.css" integrity="sha384-yFRtMMDnQtDRO8rLpMIKrtPCD5jdktao2TV19YiZYWMDkUR5GQZR/NOVTdquEx1j" crossorigin="anonymous">
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.2/dist/katex.min.js" integrity="sha384-9Nhn55MVVN0/4OFx7EE5kpFBPsEMZxKTCnA+4fqDmg12eCTqGi6+BB2LjY8brQxJ" crossorigin="anonymous"></script>
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.2/dist/contrib/auto-render.min.js" integrity="sha384-kWPLUVMOks5AQFrykwIup5lo0m3iMkkHrD0uJ4H5cjeGihAutqP0yW0J6dpFiVkI" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script>
{{ $katex | safeHTML }}
{{ end }}
{{ else }}
{{ $vendorScript := slice $jquery $main | resources.Concat "/js/vendor_main.js" | resources.Minify}}
<script src="{{ printf "%s%s" $cdn_url $vendorScript.RelPermalink }}" async=""></script>
{{ $scripts = $scripts | resources.Concat "/js/vendor_main.js" | resources.Minify}}
{{ end }}
<script src="{{ printf "%s%s" $cdn_url $scripts.RelPermalink }}" async=""></script>
{{ template "_internal/google_analytics_async.html" . }}