美文网首页
FireBreath笔记

FireBreath笔记

作者: Westring | 来源:发表于2019-02-26 16:47 被阅读0次
    封装接口分三步:

    1、在PluginAPI的构造函数中调用注册方法函数registerMethod("xxx", make_method(this, &PluginAPI::xxx));
    2、在类中声明xxx接口;
    3、在PluginAPI.cpp中定义xxx函数的实现。

    设置回调分三步:

    1、在PluginAPI的构造函数中调用注册事件宏FB_JSAPI_EVENT(事件,参数个数,(各参数类型));
    2、在需要触发事件的位置调用fire_事件(各个参数);
    3、在js层注册事件并且实现事件的处理流程,注册事件老版ie使用attachEvent("on"+name, func),新点的ie使用addEventListener(name, func, false),然后记得将事件和处理流程绑定addEvent(this.plugin, 'UI_process', processEvent)。

    为插件添加Property属性分两步:

    1、在PluginAPI的构造函数中调用;

    registerProperty("xxx",
            make_property(this,
            &PluginAPI::get_xxx,    //设置可读属性
            &PluginAPI::set_xxx));  //设置刻写属性
    

    2、在js层直接读取或修改xxx属性。

    如何获取DOM的属性,回调DOM的方法
    FB::DOM::WindowPtr window = m_host->getDOMWindow();
    FB::JSObjectPtr obj;
    if (window && window->getJSObject()->HasProperty("window")) {
        obj = window->getProperty<FB::JSObjectPtr>("window");
        xxx = window->getNode("元素id")->getProperty<std::string>("要获取的属性");
        obj->Invoke("alert", FB::variant_list_of("xxx"));
    }
    

    相关文章

      网友评论

          本文标题:FireBreath笔记

          本文链接:https://www.haomeiwen.com/subject/xctzyqtx.html