为什么在同一页面上添加 innerHTML 后 Toggle class 不起作用

Why Toggle class doesn't work after add a innerHTML on the same page

切换 class 在同一页面上添加 innerHTML 后不起作用。 如果排除 innerHTML 有效,为什么?

<script type="text/javascript">
        var html = document.querySelector('html');
        var sidebar = 'hidden';
        if (document.body.clientWidth >= 1080) {
            try { sidebar = localStorage.getItem('mdbook-sidebar'); 
} catch(e) { }
            sidebar = sidebar || 'visible';
        }
        html.classList.remove('sidebar-visible');
        html.classList.add("sidebar-" + sidebar);

//innerHTML (when I add this code, code above stops work)
var str5 = document.getElementsByTagName("body")[0].innerHTML;
var res5 = str5
.replace(/title="Next chapter"/g, "onclick\=\"savePositionNext()\" 
title\=\"Next chapter\"")
.replace(/title="Previous chapter"/g, 
"onclick\=\"savePositionPrevious()\" title\=\"Previous chapter\"")
document.getElementsByTagName("body")[0].innerHTML = res5; 
</script>

我认为您必须在代码中遵循优先级。您可以在使用切换之前更改代码的位置并生成正文内容。