<!DOCTYPE html>
<html>
<head>
<title>Select Code</title>
<meta charset="UTF-8">
<script type="text/javascript">
window.onload = function() {
function selectCode(a) {
// Get ID of Code Block
var e = a.parentNode.parentNode.getElementsByTagName('code')[0];
// Not IE or IE9+
if (window.getSelection) {
var s = window.getSelection();
if (s.setBaseAndExtent) {
s.setBaseAndExtent(e, 0, e, e.innerText.length - 1);
}
// Firefox and Opera
else {
if (window.opera && e.innerHTML.substring(e.innerHTML.length - 4) == '<br>') {
e.innerHTML = e.innerHTML + ' ';
}
var r = document.createRange();
r.selectNodeContents(e);
s.removeAllRanges();
s.addRange(r);
}
}
// Some older browsers
else if (document.getSelection) {
var s = document.getSelection();
var r = document.createRange();
r.selectNodeContents(e);
s.removeAllRanges();
s.addRange(r);
}
// IE
else if (document.selection) {
var r = document.body.createTextRange();
r.moveToElementText(e);
r.select();
}
};
}
</script>
</head>
<body>
<a onclick="selectCode(this); return false;" href="#">Select all</a>
<code>Some Code</code>
</body>
</html>
有沒有人知道什麼是錯的?它只是不起作用。 :-(JavaScript:代碼選擇 - 出現了什麼問題?
「這是行不通的」不幫助任何人來幫助你的問題。 **如何**不起作用?控制檯中是否存在錯誤?您預期會發生什麼不是?您目前爲止嘗試調試問題? – Pointy
哪一部分「不起作用」? –
'selectCode'函數只存在於'window.onload'內部,它不存在於其他任何地方。 –