/* Js for , Version=1785139387 */
 v.lang = {"confirmDelete":"\u60a8\u786e\u5b9a\u8981\u6267\u884c\u5220\u9664\u64cd\u4f5c\u5417\uff1f","deleteing":"\u5220\u9664\u4e2d","doing":"\u5904\u7406\u4e2d","loading":"\u52a0\u8f7d\u4e2d","updating":"\u66f4\u65b0\u4e2d...","timeout":"\u7f51\u7edc\u8d85\u65f6,\u8bf7\u91cd\u8bd5","errorThrown":"<h4>\u6267\u884c\u51fa\u9519\uff1a<\/h4>","continueShopping":"\u7ee7\u7eed\u8d2d\u7269","required":"\u5fc5\u586b","back":"\u8fd4\u56de","continue":"\u7ee7\u7eed","importTip":"\u53ea\u5bfc\u5165\u4e3b\u9898\u7684\u98ce\u683c\u548c\u6837\u5f0f","fullImportTip":"\u5c06\u4f1a\u5bfc\u5165\u6d4b\u8bd5\u6570\u636e\u4ee5\u53ca\u66ff\u6362\u7ad9\u70b9\u6587\u7ae0\u3001\u4ea7\u54c1\u7b49\u6570\u636e"};;$(document).ready(function() {
            $('#zlight-nav').zlightMenu();
        });

        ;(function($, window, document, undefined) {
            var pluginName = 'zlightMenu',
                defaults = {
                    height: '71px',
                    subMenuHeight: '20px',
                    fontSize: '15px',
                    subMenuWidth: '180px',
                    floating: 'left',
                    transform: 'on', //关闭浮动滑动
                    transformBreak: '100',
                    lablColor: '#ffffff',
                    lablFontSize: '15px',
                    iconColor: '#ffffff',
                    iconSize: '20px',
                    mobileMainColor: '#323231',
                    mainColor: 'transparent', // 修改为透明
                    secondColor: '#FFB40C',
                    fontColor: '#ffffff', // 初始字体白色
                    activeFontColor: '#ffffff',
                    borderLightColor: 'rgba(255,255,255,0.2)',
                    borderDarkColor: 'rgba(0,0,0,0.2)',
                    dropBorderLightColor: '#444444',
                    dropBorderDarkColor: '#222222'
                };

            function Zmenu(element, options) {
                this.element = $(element);
                var ele = this;
                this.options = $.extend({}, defaults, options);
                this._defaults = defaults;
                this._name = pluginName;
                this.init(ele)
            };
            Zmenu.prototype.variables = function(ele) {
                this.op = this.options;
                this.mainNav = this.element.children('#zlight-main-nav');
                this.li = this.mainNav.children('li');
                this.links = this.mainNav.children('li').children('a');
                this.allLinks = this.mainNav.find('a');
                this.active = this.mainNav.find('.zlight-active');
                this.subMenu = this.mainNav.find('.zlight-submenu');
                this.subli = this.subMenu.children('li');
                this.subLinks = this.subMenu.children('li').children('a');
                this.mobileNav = this.element.children('#zlight-mobile-nav');
                this.mobileSelect = this.mobileNav.children('select');
                this.mobileSpan = this.mobileNav.children('span');
                this.mobileTxt = this.mobileSpan.text();
                this.mobileIcon = this.mobileNav.children('.zlight-icon');
                this.counter = 0;
            };
            Zmenu.prototype.setStyles = function(ele) {
                this.element.css({
                    'height': this.op.height,
                    'background-color': this.op.mainColor, // 使用透明背景
                    'position': 'fixed', // 设置为固定定位
                    'top': '0', // 固定在顶部
                    'left': '0',
                    'width': '100%'
                });
                this.mainNav.css({
                    'border-right-color': this.op.borderDarkColor,
                    'float': this.op.floating,
                    'background-color': 'transparent' // 主导航背景透明
                });
                this.links.css({
                    'height': this.op.height,
                    'line-height': this.op.height,
                    'font-size': this.op.fontSize,
                    'color': this.op.fontColor, // 初始字体白色
                    'border-left-color': this.op.borderDarkColor,
                    'border-right-color': this.op.borderLightColor
                });
                if (this.active) {
                    this.active.css('background-color', this.op.secondColor).children('a').css('color', this.op.activeFontColor)
                };
                this.subMenu.css({
                    'background-color': 'transparent', // 子菜单背景透明
                    'width': this.op.subMenuWidth
                });
                this.subLinks.css({
                    'color': this.op.fontColor, // 子菜单初始字体白色
                    'font-size': this.op.fontSize,
                    'border-top-color': this.op.dropBorderDarkColor,
                    'border-bottom-color': this.op.dropBorderLightColor,
                    'line-height': this.op.subMenuHeight
                });
                this.mobileSelect.fadeTo(0, 0).css({
                    'height': this.op.height,
                    'line-height': this.op.height
                });
                this.mobileSpan.css({
                    'line-height': this.op.height,
                    'color': this.op.lablColor,
                    'font-size': this.op.lablFontSize
                });
                this.mobileIcon.css({
                    'color': this.op.iconColor,
                    'line-height': this.op.height,
                    'font-size': this.op.iconSize
                });
                this.mobileNav.css('background-color', this.op.mobileMainColor)
            };
            Zmenu.prototype.createMobile = function(ele) {
                this.mobileSelect.append('<option>' + this.mobileTxt + '</option>');
                this.allLinks.each(function(indx, element) {
                    var hrf = $(element).attr('href'),
                        txt = $(element).text(),
                        hclass = $(element).parents('.zlight-submenu').length,
                        tr = '';
                    if (hclass > 0) {
                        for (i = 0; i < hclass; i++) {
                            tr += '-'
                        }
                    };
                    ele.mobileSelect.append('<option value="' + hrf + '">' + tr + ' ' + txt + '</option>')
                })
            };
            Zmenu.prototype.change = function(ele) {
                this.mobileSelect.on('change.zmenuChange', function() {
                    location = this.options[this.selectedIndex].value
                });
                this.li.add(this.subli).on('mouseenter mouseleave.zmenuEnter', function(event) {
                    if (event.type === 'mouseenter') {
                        $(this).css('background-color', ele.op.secondColor).children('a').css('color', ele.op.activeFontColor)
                    } else if (event.type === 'mouseleave') {
                        if ($(this).hasClass('zlight-active') === false) {
                            $(this).css('background-color', 'transparent').children('a').css('color', ele.op.fontColor)
                        }
                    }
                });
                
                // 添加鼠标悬停效果
                this.element.on('mouseenter.zlightHover', function() {
                    $(this).addClass('zlight-hover');
                }).on('mouseleave.zlightHover', function() {
                    // 只有在没有滚动的情况下才移除悬停效果
                    if ($(document).scrollTop() < ele.op.transformBreak) {
                        $(this).removeClass('zlight-hover');
                    }
                });
                
                if (this.op.transform === 'on') {
                    $(window).on('scroll.ZlightScrolling', function() {
                        if ($(document).scrollTop() >= ele.op.transformBreak) {
                            // 添加滚动样式类
                            ele.element.addClass('zlight-scrolled');
                        } else {
                            // 移除滚动样式类
                            ele.element.removeClass('zlight-scrolled');
                            // 滚动到顶部时也移除悬停效果
                            ele.element.removeClass('zlight-hover');
                        }
                    })
                }
            };
            Zmenu.prototype.init = function(ele) {
                this.variables(ele);
                this.setStyles(ele);
                this.createMobile(ele);
                this.change(ele)
            };
            $.fn[pluginName] = function(options) {
                return this.each(function() {
                    if (!$.data(this, 'plugin_' + pluginName)) {
                        $.data(this, 'plugin_' + pluginName, new Zmenu(this, options))
                    }
                })
            }
        })(jQuery, window, document);;v.path = [""];;v.objectType = "article";;v.objectID = 44;;v.categoryID = 57;;v.categoryPath = ["57"];;// 初始化场景
        const scene = new THREE.Scene();
        scene.background = new THREE.Color(0x000000);
        
        // 初始化相机
        const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
        camera.position.z = 5;
        
        // 初始化渲染器
        const renderer = new THREE.WebGLRenderer({ antialias: true });
        renderer.setSize(window.innerWidth, window.innerHeight);
        document.getElementById('container').appendChild(renderer.domElement);
        
        // 添加环境光
        const ambientLight = new THREE.AmbientLight(0x404040);
        scene.add(ambientLight);
        
        // 添加定向光
        const directionalLight = new THREE.DirectionalLight(0xffffff, 0.8);
        directionalLight.position.set(1, 1, 1);
        scene.add(directionalLight);
        
        // 创建原子和键
        const atomGeometry = new THREE.SphereGeometry(0.3, 32, 32);
        const bondGeometry = new THREE.CylinderGeometry(0.05, 0.05, 1, 8);
        
        // 硅原子 (中心，灰色)
        const siliconMaterial = new THREE.MeshPhongMaterial({ color: 0x808080 });
        const siliconAtom = new THREE.Mesh(atomGeometry, siliconMaterial);
        scene.add(siliconAtom);
        
        // 氢原子 (四个顶点，白色)
        const hydrogenMaterial = new THREE.MeshPhongMaterial({ color: 0xffffff });
        const hydrogenAtoms = [];
        
        // 硅烷分子是四面体结构
        // 计算四面体顶点的坐标
        const tetrahedronVertices = [
            new THREE.Vector3(0, 1, 0),
            new THREE.Vector3(0.943, -0.333, 0),
            new THREE.Vector3(-0.471, -0.333, 0.816),
            new THREE.Vector3(-0.471, -0.333, -0.816)
        ];
        
        // 创建氢原子和键
        tetrahedronVertices.forEach(vertex => {
            // 创建氢原子
            const hydrogenAtom = new THREE.Mesh(atomGeometry, hydrogenMaterial);
            hydrogenAtom.position.copy(vertex);
            scene.add(hydrogenAtom);
            hydrogenAtoms.push(hydrogenAtom);
            
            // 创建键
            const bond = new THREE.Mesh(bondGeometry, new THREE.MeshPhongMaterial({ color: 0xaaaaaa }));
            
            // 计算键的位置和方向
            const bondDirection = vertex.clone().normalize();
            const bondLength = vertex.length();
            
            // 设置键的位置和方向
            bond.position.copy(vertex.clone().multiplyScalar(0.5));
            bond.scale.set(1, bondLength, 1);
            bond.lookAt(vertex);
            bond.rotateX(Math.PI / 2); // 圆柱体默认沿Y轴，需要旋转
            
            scene.add(bond);
        });
        
        // 动画控制变量
        let isRotating = true;
        let rotationSpeed = 0.005;
        
        // 动画循环
        function animate() {
            requestAnimationFrame(animate);
            
            if (isRotating) {
                // 旋转整个分子
                scene.rotation.y += rotationSpeed;
            }
            
            renderer.render(scene, camera);
        }
        
        // 控制按钮事件
        document.getElementById('toggleRotation').addEventListener('click', function() {
            isRotating = !isRotating;
            this.textContent = isRotating ? '暂停旋转' : '继续旋转';
        });
        
        document.getElementById('resetView').addEventListener('click', function() {
            scene.rotation.set(0, 0, 0);
        });
        
        // 响应窗口大小变化
        window.addEventListener('resize', function() {
            camera.aspect = window.innerWidth / window.innerHeight;
            camera.updateProjectionMatrix();
            renderer.setSize(window.innerWidth, window.innerHeight);
        });
        
        // 开始动画
        animate();
;v.pageLayout = "global";;
$(document).ready(function()
{
    $('.tree .list-toggle').mousedown(function(){$(this).parents('.panel-block').height('auto');})
    $('.row.blocks .tree').resize(function(){$(this).parents('.row.blocks').tidy({force: true});})
})
;$(document).ready(function()
{
    $('#copyBox').hide().find(':input').attr('disabled', true);
    $('#source').change(function()
    {
        $('#copyBox').hide().find(':input').attr('disabled', true);
        if($(this).val() != 'original') $('#copyBox').show().find(':input').attr('disabled', false);
    });

    /* Set current active topNav. */
    var hasActive = false;
    if(v.categoryID > 0 && $('.nav-article-' + v.categoryID).length >= 1)
    {
        hasActive = true;
        $('.nav-article-' + v.categoryID).addClass('active');
    }

    if(v.categoryPath && v.categoryPath.length)
    {
        $.each(v.categoryPath, function(index, category)
        {
            if(!hasActive)
            {
                if($('.nav-article-' + category).length >= 1) hasActive = true;
                $('.nav-article-' + category).addClass('active');
            }
        });
    }
    else if(v.path && v.path.length)
    {
        $.each(v.path, function(index, category)
        {
            if(!hasActive)
            {
                if($('.nav-article-' + category).length >= 1) hasActive = true;
                $('.nav-article-' + category).addClass('active');
            }
        });
        if(!hasActive) $('.nav-article-0').addClass('active');
    }

    if(v.categoryID !== 0) $('#category' + v.categoryID).parent().addClass('active');
});
$(document).ready(function()
{
    function basename(str)
    {
        var pos = str.lastIndexOf('/');
        return str.substring(pos + 1,str.length);
    }

    $('body').tooltip(
    {
        html: true,
        selector: "[data-toggle=tooltip]",
        container: "body"
    }); 

    $('.article-content img').click(function(){
        var itemSrc  = $(this).attr('src');
        var itemName = basename(itemSrc).split('.')[0];
        if(typeof(itemName) == 'string')
        {
            $('.article-files .' + itemName).click();
        }
    });

    if($('.previous > a > span').width() > $('.previous > a').width())
    {
        previousSpanWidth = $('.previous > a').width() - $('.previous .icon-arrow-left').width() - 5;
        $('.previous > a > span').css('width', previousSpanWidth);
    }

    if($('.next > a > span').width() > $('.next > a').width())
    {
        nextSpanWidth = $('.next > a').width() - $('.next .icon-arrow-right').width() - 5;
        $('.next > a > span').css('width', nextSpanWidth);
    }
});

;
var hash = window.location.hash.substring(1);
var browserLanguage = navigator.language || navigator.userLanguage; 
var resolution      = screen.availWidth + ' X ' + screen.availHeight;
$.get(createLink('log', 'record', "hash=" + hash), {browserLanguage:browserLanguage, resolution:resolution});
