add LaTex Plugin

This commit is contained in:
mutoo 2013-12-11 16:28:11 +08:00
parent 5ced5651aa
commit 6d1a2b17b3
2 changed files with 77 additions and 0 deletions

64
LaTex/Plugin.php Normal file
View File

@ -0,0 +1,64 @@
<?php
/**
* LaTex 公式解析
*
* @package LaTex
* @author mutoo
* @version 1.0.0
* @link http://blog.mutoo.im/LaTex.html
*/
class LaTex_Plugin implements Typecho_Plugin_Interface
{
/**
* 激活插件方法,如果激活失败,直接抛出异常
*
* @access public
* @return void
* @throws Typecho_Plugin_Exception
*/
public static function activate()
{
Typecho_Plugin::factory('Widget_Archive')->footer = array('LaTex_Plugin', 'footer');
}
/**
* 禁用插件方法,如果禁用失败,直接抛出异常
*
* @static
* @access public
* @return void
* @throws Typecho_Plugin_Exception
*/
public static function deactivate()
{}
/**
* 获取插件配置面板
*
* @access public
* @param Typecho_Widget_Helper_Form $form 配置面板
* @return void
*/
public static function config(Typecho_Widget_Helper_Form $form){}
/**
* 个人用户的配置面板
*
* @access public
* @param Typecho_Widget_Helper_Form $form
* @return void
*/
public static function personalConfig(Typecho_Widget_Helper_Form $form){}
/**
* 输出尾部js
*
* @access public
* @param unknown $footer
* @return unknown
*/
public static function footer() {
$jsUrl = Helper::options()->pluginUrl . '/LaTex/latex.js';
echo '<script type="text/javascript" src="'. $jsUrl .'"></script>';
}
}

13
LaTex/latex.js Normal file
View File

@ -0,0 +1,13 @@
(function() {
var $ = document.querySelectorAll.bind(document);
var latex = $('code.lang-laTex, code.lang-latex, code.lang-tex');
for (var i = 0, l = latex.length; i < l; i++) {
var node = latex[i];
var latex_image = document.createElement("img");
latex_image.src = "http://latex.codecogs.com/png.latex?"+ node.innerHTML;
var parent = node.parentNode;
parent.insertBefore(latex_image, node);
parent.removeChild(node);
}
})();