得到了网页中一个元素的接口指针,想为它注册一个onclick事件,这个事件就是网页里的一个JS函数,应该怎么做?

解决方案 »

  1.   

    http://msdn.microsoft.com/zh-cn/magazine/cc302278(en-us).aspx
      

  2.   

    <input type=hidden id="substr" name="hiddenObject" value="" onclick="clickhand()">
    下面是获取它的执行函数的代码:
     if (m_pBrowser->get_Document( &spDispatch) != S_OK)
         return;
      spDispatch->QueryInterface(IID_IHTMLDocument3,(void**)&pDoc3); VARIANT vOnclick;
     BSTR bstrid = ::SysAllocString(L"substr");
     pDoc3->getElementById(bstrid,&pElement); pElement->get_onclick(&vOnclick); 这样就获取了onclick的响应函数。
    假设另外一个网页元素是pAddElement,设置它的onclick响应函数只需 pAddElement->put_onclick(vOnclick);
      

  3.   

    我的情况有点特殊,需要设置的onclick事件代码不在其他元素的onclick里,而且还要传参数。
      

  4.   

    可以用IHtmlDocument获得函数的IDispatch接口之后传给put_onclick