/** * PJAX 初始化与页面切换重绑定脚本 * 依赖:jQuery, jquery.pjax.min.js * 加载顺序:在 jquery.pjax.min.js 之后,body 末尾 */ (function ($) { // ========== 常量 ========== var CONTAINER = '#pjax-container'; var PJAX_OPTS = { container: CONTAINER, fragment: CONTAINER, timeout: 8000, scrollTo: false }; // ========== 各组件重初始化 ========== /** 访问量统计 */ function reinitVisitors() { if (typeof BlogAPI === 'undefined') return; var apiBase = BlogAPI; if ($('.visitors').length === 1) { var $visitor = $('.visitors:first'); $.get(apiBase + '/count_click_add?id=' + $visitor.attr('id'), function (data) { $visitor.text(Number(data)); }); } else if ($('.visitors-index').length > 0) { $('.visitors-index').each(function () { var $elem = $(this); $.get(apiBase + '/count_click?id=' + $elem.attr('id'), function (data) { $elem.text(Number(data)); }); }); } } /** AI 摘要(post.html 内联脚本,pjax 后由 executeScripts 触发) */ function reinitAISummary() { if (typeof ai_gen === 'function' && $('#ai-output').length) { try { ai_gen(); } catch (e) { /* ignore */ } } } /** 代码块复制按钮 */ function reinitCopyButtons() { $('.copy').remove(); $('div.highlight').each(function () { var $block = $(this); var $btn = $('