首页 > 解决方案 > 我可以更改/覆盖 window.getSelection() 的定义吗?

问题描述

我想知道如何更改本机 JS 函数的定义。

我需要这样做以测试我的团队正在开发的 Chrome 扩展程序的漏洞利用。具体来说,我希望window.getSelection()函数返回我选择的值,而不是屏幕中实际选择的文本。

标签: javascript

解决方案


你可能想要'patch'这个getSelection功能,所以

var originalGetSelection = window.getSelection;
window.getSelection = function() {
// your own stuff here
const args = Array.prototype.slice.call(arguments); // convert arguments as array of
return originalGetSelection.apply(window, args);
}

推荐阅读