您好,欢迎来到菜鸟吧源码网(www.cniao8.com)本站只做精品网站源码!
  • 首 页
  • 菜鸟云
  • 公告:本站资源均来源于互联网及会员投稿发布,所有资源仅供学习参考研究使用,请勿商用或其它非法用途,商用请购买正版,否则产生一切后果由用户自行承担!谢谢!

     

    当前位置:主页 > 站长学堂 > zblog教程 >
    Z-BlogPHP JavaScript Framework
    时间:2019-10-11 15:15 作者:菜鸟吧 浏览:收藏 挑错 打印

    介绍

    这是一个旨在规范Z-BlogPHP前端代码接口而推出的框架,用于处理之前前端代码无序的局面。


    代码示例:https://github.com/zblogcn/zblogphp/blob/master/zb_users/plugin/ZBPJFExample/zbpjfexample.js


    函数说明

    1. cookie

    get

    zbp.cookie.get(CookieKey)

    根据Key得到Cookie的值

    set

    zbp.cookie.set(sCookieName, sCookieValue, iExpireDays)

    2. comment

    get

    zbp.comment.get(文章ID, 评论页数)

    触发事件,获得指定的评论列表

    reply

    zbp.comment.rely(评论ID)

    触发回复评论事件

    post

    zbp.comment.post(发送内容)

    触发发送评论事件。发送内容要求为Object,参数如下:

               /**

                * Form Data

                * @name POSTFORMDATA

                * @typedef {Object} PostData

                * @memberOf COMMENT

                * @property {string} action - Post Url

                * @property {string} postid - Article ID

                * @property {string} verify - Verify code

                * @property {string} name   - Comment user name

                * @property {string} email  - Comment user E-mail

                * @property {string} content - Comment content

                * @property {string} homepage - Comment user Website

                * @property {string} replyid - Comment Parent ID

                * @property {string} isajax - Return Ajax String

                * @type {object}

                */

    3. userinfo

    output

    save

    saveFromHtml

    懒得写了……


    4. plugin

    on

    zbp.plugin.on(bind / addListener)(接口名, 插件ID, 回调函数(错误, 待发送数据))

    用于创建一个监听器,监听事件的发生


    unbind

    zbp.plugin.unbind(removeListener)(插件ID)

    用于解绑一个监听器


    emit

    zbp.plugin.emit(接口名, 内容)

    用于传递内容到监听器


    自带事件接口列表

    userinfo.output

    userinfo.savefromhtml

    userinfo.save

    无参数,请自行处理。


    comment.verifydata

    代码示例,应注意ZBPJFExample是指你的主题或者插件ID,以防止冲突:


    // 验证评论

    zbp.plugin.on("comment.verifydata", "ZBPJFExample", function (error, formData) {

    console.log("待发送数据:");

    console.log(formData);

    // formData里的数据可以任意操作


    // 如果出错的话

    //if (1 == 2) {

    //error.no = 32768; // 给一个错误编码

    //error.msg = "Z-BlogPHP JavaScript Framework 测试"; // 错误消息

    //}

    // 设置error后,系统将自动报错。

    });

    comment.posterror

    comment.postsuccess

    代码示例:


    // 评论发送成功

    zbp.plugin.on("comment.postsuccess", "ZBPJFExample", function (formData, data, textStatus, jqXhr) {

    console.log("系统返回数据:" + data);

    // 同样,这里除了formData是发送的数据外,另外三项是jQuery ajax的参数,参见jQuery手册,不再赘述。

    });

    comment.get

    comment.got

    comment.reply

    //点击回复评论

    zbp.plugin.on("comment.reply", "ZBPJFExample", function (id) {

    console.log("Wow! 你要回复ID为" + id + "的评论啊!");

    });

    更多系统默认接口代码请看:Register system events 更多详情请阅读源码: https://github.com/zblogcn/zblogphp/blob/master/zb_system/script/zblogphp.orig.js


    模块化调用

    AMD

    <script src="{$host}zb_system/script/require.js" type="text/javascript"></script>

    <script>

    require.config({

    baseUrl: '{$host}',

    paths: {

    jquery: 'zb_system/script/jquery.min',

    zbp: 'zb_system/script/zblogphp'

    }

    });

    require(["zbp", "jquery"], function (ZBP, jQuery) {

    var zbp = new ZBP({

    bloghost: "{$host}",

    ajaxurl: "{$zbp.ajaxurl}",

    cookiepath: "{$zbp.cookiespath}?>",

    lang: {

    error: {

    72: "{$lang['error']['72']}",

    29: "{$lang['error']['29']}",

    46: "{$lang['error']['46']}"

    }

    }

    }, jQuery);

    console.log(zbp);

    });


    </script>

    CMD

    <script src="{$host}zb_system/script/sea.js" type="text/javascript"></script>

    <script>


    seajs.config({

    base: '{$host}',

    alias: {

    jquery: 'zb_system/script/jquery.min',

    zbp: 'zb_system/script/zblogphp'

    },

    debug: true

    });

    seajs.use(["zbp", "jquery"], function (ZBP, jQuery) {

    var zbp = new ZBP({

    bloghost: "{$host}",

    ajaxurl: "{php}echo $zbp->ajaxurl;{/php}",

    cookiepath: "{php}echo $zbp->cookiespath;{/php}?>",

    lang: {

    error: {

    72: "{php}echo $lang['error']['72'];{/php}",

    29: "{php}echo $lang['error']['29'];{/php}",

    46: "{php}echo $lang['error']['46'];{/php}"

    }

    }

    }, jQuery);

    console.log(zbp);

    });

    在模块中调用


    define(function(require, exports, module) {

    var jquery = require("jquery");

    var ZBP = require("zbp");

    var zbp = new ZBP({

           // Params...

    }, jquery);

    console.log(zbp);

    });

    CommonJS

    var ZBP = require("zbp");

    ES6 Import

    import * as ZBP from 'zbp';

    郑重声明:
    本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
    我们不承担任何技术及版权问题,且不对任何资源负法律责任。
    如无法下载,联系站长索要。
    如有侵犯您的版权,请给我们来信:admin@cniao8.com,我们尽快处理。

    ZBlog发表文章区标签教程ZBlog发表文章区标签教程
    ZBlog 自定义分类静态首页配置ZBlog 自定义分类静态首页配置
    zblog导航栏管理设置的几种方法zblog导航栏管理设置的几种方法