Можно так как ниже, но впринципе правильнее вместо такой строчки
script.innerHTML = "function print(){document.querySelector('.typical').value = document.body.innerHTML;};";
просто писать
script.src = 'yourScript.js'
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>ГГ</title>
<style>
.typical {
width: 500px;
height: 300px;
display: block;
}
button {
display: block;
width: 200px;
height: 30px;
margin: 50px;
font-size: 24px;
}
input {
margin: 30px;
}
</style>
</head>
<body>
<textarea col="30" row="50" class="typical"></textarea>
<input type="text">
<button>ВКЛ/ОТКЛ</button>
<script class="simple-script">function print(){
document.querySelector('.typical').value = document.body.innerHTML;
}</script>
<script>
document.querySelector('button').onclick = function(){
var ourScript = document.querySelector('.simple-script');
console.log(ourScript);
var input = document.querySelector('input');
if (ourScript){
document.body.removeChild(ourScript);
document.querySelector('.typical').value = '';
input.value = 'Скрипт отключен';
}
else {
var script = document.createElement('script');
script.innerHTML = "function print(){document.querySelector('.typical').value = document.body.innerHTML;};";
script.classList.add("simple-script");
document.body.appendChild(script);
input.value = 'Скрипт включен';
print();
}
}
</script>
</body>
</html>