Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Chome扩展阻止<;选择>;来自扩展的元素_Javascript_Html_Google Chrome Extension - Fatal编程技术网

Javascript Chome扩展阻止<;选择>;来自扩展的元素

Javascript Chome扩展阻止<;选择>;来自扩展的元素,javascript,html,google-chrome-extension,Javascript,Html,Google Chrome Extension,我开发了一个非常简单的Chome扩展,它公开了一个工具栏按钮。单击按钮时,使用XMLHttpRequest将页面内容发布到服务器,然后将元素的innerHtml替换为从服务器返回的新内容 出于某种原因,这会阻止元素扩展。我已通过禁用扩展来验证这一点,该扩展使then再次工作 你知道为什么会发生这种情况以及如何解决吗?以下代码仅供参考: chrome.extension.onMessage.addListener( function (request, sender, sendResponse)

我开发了一个非常简单的Chome扩展,它公开了一个工具栏按钮。单击按钮时,使用
XMLHttpRequest
将页面内容发布到服务器,然后将元素的
innerHtml
替换为从服务器返回的新内容

出于某种原因,这会阻止元素扩展。我已通过禁用扩展来验证这一点,该扩展使then再次工作

你知道为什么会发生这种情况以及如何解决吗?以下代码仅供参考:

chrome.extension.onMessage.addListener(
function (request, sender, sendResponse) {
    if (request.msg == "get_content") {
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function () {
            if (xmlhttp.readyState == 4) {
                if (xmlhttp.status == 200) {
                    document.getElementsByTagName('html')[0].innerHTML =
                       xmlhttp.responseText;
                } else {
                    alert('Cannot reach russiangram.com');
                }
            }
        }
        xmlhttp.open("POST", "https://russiangram.com/translate/Default.aspx", true);
        xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xmlhttp.send(document.getElementsByTagName('html')[0].innerHTML);
        sendResponse({ data: 'success' });
    }
});

我猜你是在哪里替换documents HTML标记的内容,也可能是在替换最初在该页面上的任何相关JS/CSS引用


可能作为一种测试,而不是替换HTML标记的内容,向页面添加一个新的DIV元素或其他内容,并将其作为目标。这很有希望让您看到select功能是否仍然有效。

我猜您是在哪里替换documents HTML标记的内容,也可能是在替换最初在该页面上的任何相关JS/CSS引用

可能作为一种测试,而不是替换HTML标记的内容,向页面添加一个新的DIV元素或其他内容,并将其作为目标。希望这能让您看到select功能是否仍然有效