冥界3大法王 发表于 2022-10-12 23:18

为什么照官方说的来没效果? 复制全部源码的部分到另一个工程也运行没效果?

https://blogs.embarcadero.com/execute-scripts-and-view-source-with-tedgebrowser/

为什么照他说的来,没效果?


EdgeBrowser1.ExecuteScript('encodeURI(document.documentElement.outerHTML)');//不报错,也没有输出!




下面的几行也加进去了。
uses
System.NetEncoding;


procedure TEdgeViewForm.EdgeBrowser1ExecuteScript(Sender: TCustomEdgeBrowser;
AResult: HRESULT; const AResultObjectAsJson: string);
begin
if AResultObjectAsJson <> 'null' then
    memoHTML.Text := TNetEncoding.URL.Decode(AResultObjectAsJson).DeQuotedString('"');
end;



https://static.52pojie.cn/static/image/hrline/2.gif

https://github.com/Embarcadero/RADStudio-DemoKit/tree/main/10.4.2-demos/EdgeView
复制全部源码的部分到另一个工程也运行没效果? 不知是否错过了什么,也就分割线的上面的那部分该是关键啊 ~~

Takitooru 发表于 2022-10-13 00:27

参考1,图文详细
https://mam-mam.net/delphi/tedgebrowser.html
参考2,基本用法
https://blogs.embarcadero.com/ja/execute-scripts-and-view-source-with-tedgebrowser-ja/

冥界3大法王 发表于 2022-10-13 06:51

Takitooru 发表于 2022-10-13 00:27
参考1,图文详细
https://mam-mam.net/delphi/tedgebrowser.html
参考2,基本用法


这些完全看过了。demo也下载了。
javascriptdom   看了四本书,云里雾里的
上次哥们了说的jQUERY的回复 还没弄明白呢,一会是自带的,一会是外来的js库,到底哪种书才能和哥们的回贴对上号呢。


我问的是这几句 单用不报错 没效果呢 。。。


那些支持安装过程我都知道。直接适行它那demo也没问题, 抽代码到自己的form 上,你怎么不行呢?

冥界3大法王 发表于 2022-10-13 06:56

一会儿再试试小日本说的,感觉他说的好像比官方的更详细一些。

Takitooru 发表于 2022-10-13 07:52

冥界3大法王 发表于 2022-10-13 06:51
这些完全看过了。demo也下载了。
javascriptdom   看了四本书,云里雾里的
上次哥们了说的jQUERY的回 ...

没Delphi我无法调试,但是感觉第一个链接里的日本网友文章比较详细。

代码用到自己项目中无报错无效果,这样确实难找原因,
不过还是可以用另外一种方式调试,把自己的项目代码转移到demo中在调试,如果成功,说明原项目中缺少某些引用之类。

aa2923821a 发表于 2022-10-13 08:38

支持支持!!

塞北的雪 发表于 2022-10-13 09:12

EdgeBrowser1.ExecuteScript('encodeURI(document.documentElement.outerHTML)');
encodeURI是有返回值的,直接执行没有反应,你试试alert(encodeURI(...)) 看看有没有消息框

冥界3大法王 发表于 2022-10-13 11:31

塞北的雪 发表于 2022-10-13 09:12
EdgeBrowser1.ExecuteScript('encodeURI(document.documentElement.outerHTM ...

这个昨晚试了,弹窗是成功了。

Light紫星 发表于 2022-10-15 19:42

代码这种东西有时候很玄学的,复制过来不一定行,但是你对着打一遍可能又行了
页: [1]
查看完整版本: 为什么照官方说的来没效果? 复制全部源码的部分到另一个工程也运行没效果?