我在HTML文件中使用Javascript来展开和折叠文件的元素。Javascript适用于Chrome,但不适用于IE或Firefox
这是脚本:
function toggleBlock(pstrID){
var myDiv = document.getElementById('d' + pstrID);
if (myDiv){
if (myDiv.style.display == 'none'){
showBlock(pstrID);
} else{
hideBlock(pstrID);
}
}
}
function showBlock(pstrID){
var myDiv = document.getElementById('d' + pstrID);
if (myDiv){
myDiv.style.display = 'block';
var myImage = document.getElementById('i' + pstrID);
if (myImage){
myImage.src = 'arrowdown.gif';
myImage.alt = 'Hide';
}
if (document.location.href.indexOf('mk:@') == 0)
myDiv.innerHTML = myDiv.innerHTML;
}
}
function hideBlock(pstrID){
var myDiv = document.getElementById('d' + pstrID);
if (myDiv){
myDiv.style.display = 'none';
var myImage = document.getElementById('i' + pstrID);
if (myImage){
myImage.src = 'arrowright.gif';
myImage.alt = 'Show';
}
if (document.location.href.indexOf('mk:@') == 0)
myDiv.innerHTML = myDiv.innerHTML;
}
}
当我调用脚本,我使用以下命令:
<a id="h7217" class="expandingblocktemplate" title="" href="javascript:toggleBlock('7217')">
在Chrome中的一切工作正常。
在IE中,点击链接会导致不同的窗口(显示的地址显然是javascript:toggleBlock('7217'),数字取决于点击的链接)以及错误“Internet Explorer无法显示网页” 。
在Firefox中,一个新的标签出现,错误控制台说:
错误:toggleBlock没有定义
源文件:JavaScript的:toggleBlock( '7217')
线:1