我想防止iframe元素每次触发oj​​it_code事件。例如,一个页面有4个iframe,当我加载此页面时,我的OnDocumentComplete事件运行4次。我想为每个页面只运行一次OnDocumentComplete。我怎样才能做到这一点?

也许我可以在OnDocumentComplete控件中删除或阻止iframes

最佳答案

主文档中的每个OnDocumentComplete/FRAME都会触发事件 IFRAME
如果您想忽略它们,请尝试以下操作:

procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
begin
  // check that the event is raised for the top-level browser (not frames or iframes)
  if pDisp = TWebBrowser(Sender).ControlInterface then
  begin
    // do something nice...
  end;
end;

从Delphi Docs:

关于delphi - 如何避免嵌入式iframe元素的OnDocumentComplete事件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10105150/

10-08 22:41