how to debug webkit

2023-11-08

1、编译带debug 信息的webkit 库
  删除qt-everywhere-opensource-src-4.7.0/src/3rdparty/webkit/WebCore/WebCore.pro 中的红色两行代码
还有JavaScriptCore/JavaScriptCore.pro
CONFIG(QTDIR_build) {
      # Remove the following 2 lines if you want debug information in WebCore
     #CONFIG -= separate_debug_info
    #CONFIG += no_debug_info
}
2、打开NDEBUG宏,可以跟踪webkit 中dom tree 的结构,在GDB 中用call showTree(node) 可以打印出整个dom tree
     如何打开NDEBUG 宏: 删除以下文件中的NDEBUG定义
     webkit/WebCore/Makefile
     webkit/WebKit.pri 
       webkit/JavaScriptCore/JavaScriptCore.pri
      webkit/JavaScriptCore/Makefile
3、在代码中加入showTree(),查看 dom tree
  如: 在FrameView.cpp 的paintContents() 中加入  showTree(contentRenderer);
       打印结果:
       *#document      0x4e1940
        html    0x4e5a10
        HTML    0x4c03b0
                HEAD    0x4e7d50
                        #text   0x4f8380 "\n            "
                        META    0x4f8aa8
                        #text   0x4f8b08 "\n            "
                        TITLE   0x4e7dc0
                        #text   0x4f81b8 "\n            \n"
                        SCRIPT  0x4effd0
                        #text   0x4cf700 "\n"
                        SCRIPT  0x4bb160
                        #text   0x521728 "\n"
                        SCRIPT  0x51f7b0
                        #text   0x521760 "\n            "
                        STYLE   0x4f0cc0
                                #text   0x513ba0 "\n* {\n       margin: 0;\n    padding: 0;\n}\n\nbody {\n      background-color: transparent;\n        width: 640px;\n height: 530px;\n        overflow: hidden;\n     background: url(images/index.jpg) no-repeat;\n}\n\n div.menu {\n    position: absolute;\n    top: 0px;\n    left: 0px;\n    width: 640px;\n    height: 530px;\n}\n \n\n #background {\n    position: absolute;\n  "
                        #text   0x4bb6d0 "\n \n"
                        SCRIPT  0x4bbe30
                                #text   0x4e7b80 "\nvar backurl=window.location.href;\nvar data="[{'   "
                BODY    0x511c28
                        #text   0x512f48 "\n            "
                        DIV     0x5120b8 CLASS=menu
                                #text   0x511428 "\n                    "
                                DIV     0x4fef68
                                #text   0x54f070 "\n                    "
                                DIV     0x54daa0
                                        DIV     0x4eba58 CLASS=img0 STYLE=top: 35px; left: 405px; width: 95px; height: 190px; display: block; 
                                                IMG     0x4ebd18 STYLE=-webkit-transition-property: -webkit-transform; -webkit-transition-duration: 2s; -webkit-transition-timing-function: initial; -webkit-transition-delay: initial; -webkit-transform: rotate(0deg); 
                                #text   0x54dd88 "\n            "
                        #text   0x54dde0 "\n            "
                        DIV     0x54de70 CLASS=name
                        #text   0x54e4b0 "\n    "
                        #text   0x54a4e8 "\n \n"
                        #text   0x54a540 "\n\n"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

how to debug webkit 的相关文章

随机推荐

  • 正在设定sun-java6-jre解决方法

    今天搭建一个linux的开发环境遇到一个很无解的问题 出现一个 正在设定 sun java6 jre 的界面 然后鼠标接盘都操作不了 还是惊叹网络的强大 在网上搜索到一个解决方案 才发现遇到问题特别时一个很无解的问题 要即使的上网搜索一下
  • 计算机图形学 期末复习 微课版 孔令德 六、自由曲线与曲面 期末复习

    重点 公式 连续性条件 参数连续性 0阶参数连续性 若两个相邻的曲线段在首末点相连接 C 0 1阶参数连续性 若两个相邻曲线段在相交点处有相同的一阶导数 C 1 2阶参数连续性 若两个相邻曲线段的方程在相交点处具有相同的一阶和二阶导数 C
  • 基于CCG算法的IEEE33配电网两阶段鲁棒优化调度matlab

    目录 1 前言 2基本内容 2 1 配网两阶段鲁棒模型 2 2 求解步骤 3部分程序 4程序结果 5程序链接 1 前言 鲁棒优化是电力系统研究的热点 而两阶段鲁棒和分布鲁棒研究就成为各类期刊 sci ei 核心 的宠儿 最简单的思路是通过改
  • unity3D塔防游戏-虚拟现实大作业-包含源程序、导出exe文件,游戏设计报告

    unity3d塔防游戏 下载链接在文末 点我下载资源 https download csdn net download weixin 43474701 35073702
  • franchisor and franchisee

    What is the difference between a franchisor and a franchisee The franchisor is the person or corporation that owns the t
  • SpringCloud(四)注册中心之Eureka

    SpringCloud 四 注册中心之Eureka 第一代 Spring Cloud 核心组件 从形式上来说 Feign一个顶三 Feign RestTemplate Ribbon Hystrix 常用的服务注册中心 Eureka Naco
  • 【ahk】映射按键到执行函数

    global zFuncCallPattern w IsFuncCallStr callFuncStr Return RegExMatch callFuncStr O zFuncCallPattern matchObj EvalStrArg
  • STM32 基础系列教程 33 - Lwip_tcp_client

    前言 学习stm32 以太网接口使用 及LWIP使用 用LWIP快速实现一个TCP client网络通信功能 学会基本LWIP的网络数据接收与发送功能 让初学者了解lwip 关于Lwip更多的功能介绍将会在后期的STM32 中级教程中介绍
  • 前端开发利器VSCODE推荐

    VSCODE 一个运行于 Mac OS X Windows和 Linux 之上的 针对于编写现代 Web 和云应用的跨平台源代码编辑器 注意 VSCODE适用于前端开发 仅仅是一个编辑器 并不是类似于Visual Studio 2015一样
  • 情人节送玫瑰花Java实现

    RoseException java package cn campsg java experiment exception public class RoseException extends Exception public RoseE
  • Spring面试题

    推荐博客 https blog csdn net a745233700 article details 80959716 1 Spring是什么 Spring是一个轻量级的IoC和AOP容器框架 是为Java应用程序提供基础性服务的一套框架
  • 在电子行业已经做了6年了

    从12年5月份到现在 已经快8年了 感觉时间过得好快 在从学校毕业后电子行业也做了6年了 从来没有想过要换行业 因为我也是在是很喜欢电子这一行 喜欢电路图 喜欢PCB 每到看到PCB总有一种亲切感 只可惜自己学艺不精 目前还是没有开窍 但还
  • ceph安装记录总结

    1 环境准备 准备三台虚机 每个虚机配合三块数据盘 2块网卡 一个网卡设置外网 一个网卡设置成内网 配置文件设置 根据实际情况配置每一个节点 编辑 letc sysconfig network scripts ifcfg ethO 文件 外
  • socket.io设置websocket优先使用

    查看https github com socketio engine io client blob master lib socket js L91 this transports opts transports polling webso
  • 国内领先的十大API接口排行

    应用程序编程接口API即 Application Programming Interface 现在众多企业的应用系统中常用的开放接口 对接相应的系统 软件功能 简化专业化的程序开发 一 百度API 百度API超市开通1136个数据服务接口
  • 浮点数的近似保存与计算

    这里写目录标题 负数的补码存储 十进制浮点数与二进制的转换 有限循环的二进制 无限循环的二进制 计算机对浮点数的保存 无限循环二进制数的保存 浮点数的近似 参考文献 负数的补码存储 首先我们回忆一下负数的补码表示 我们都知道 有符号数的负数
  • 三年前,故事这样开始;三年后,故事这样延续---2015年终总结

    含苞待放的蕊 开出尘埃落定的美 人生的路途 自从小编学了计算机之后 喜欢这样来描述 人生就好像是一个开发软件的一个流程 从需求分析到运行维护 需求一次又一次的变更 人生的经历一次又一次在过程中丰富 人生的路又像季节的更迭 有微风也有细雨 花
  • 非递归方式实现二叉树的前、中、后序遍历

    各位朋友们 大家五一快乐 今天我为大家分享的是不用递归的方式实现二叉树的前 中 后序遍历 一起来看看吧 文章目录 二叉树的前序遍历 二叉树的中序遍历 二叉树的后序遍历 二叉树的前序遍历 虽然我们说的是不用递归的方式实现 但是我们的思路还是模
  • Qt基础之三十五:Qt中文乱码探索

    先说个小技巧 Qt Creator支持显示源文件编码格式 右上角点UTF 8 会弹出 文件编码 对话框 我的开发环境是Win10 Qt5 12 6 VS2017 IDE是Qt Creator Qt中乱码为何总显示为问号呢 要彻底理解乱码问题
  • how to debug webkit

    1 编译带debug 信息的webkit 库 删除qt everywhere opensource src 4 7 0 src 3rdparty webkit WebCore WebCore pro 中的红色两行代码 还有JavaScrip