我是一名新手javascript程序员,我的代码遇到了问题。实际上,我不是创建此代码的人。我们的主要工作是调试并使此代码工作。
此代码适用于应在开头禁用的按钮。这适用于IE,但它似乎不适用于Firefox,我不知道是什么问题,如果你能帮助我,我会很感激。
for (var i = 0; i < length; i++) {
if (btnList.item(i).id != targetButtonId) {
// 押下:可/不可
btnList.item(i).disabled = !enable;
// ボタンイメージ:通常表示/半透明
if (document.all) {
// IE
btnList.item(i).style.filter = (enable ? '1' : 'Alpha(Opacity=50)');
} else {
// FF
btnList.item(i).style.opacity = (enable ? '1' : '.5');
}
}
}
***编辑:这是它的代码(是的,这是在日本抱歉):(
setEnableForDrawing: function(enable) {
var layout = this.getToolbar();
// 設定/解除指示回数チェック
if (enable) {
lock4setEnableForDrawing--;
if (0 < lock4setEnableForDrawing) return;
} else {
lock4setEnableForDrawing++;
if (1 < lock4setEnableForDrawing) return;
}
if (layout &&
layout.regions) {
// メニューバー
if (layout.regions.north &&
layout.regions.north.el) {
if (enable) {
layout.regions.north.el.unmask();
} else {
layout.regions.north.el.mask();
}
}
// ツールバー
if (layout.regions.center &&
layout.regions.center.bodyEl.dom &&
layout.regions.center.bodyEl.dom.getElementsByTagName('INPUT')) {
var btnList = layout.regions.center.bodyEl.dom.getElementsByTagName('INPUT');
var length = btnList.length;
for (var i = 0; i < length; i++) {
if (btnList.item(i).id != 'tool_move_drag' && // 掴み
btnList.item(i).id != 'tool_move_center' && // 中心
btnList.item(i).id != 'tool_zoom_rect' && // 矩形
btnList.item(i).id != 'tool_zoom_in' && // 拡大
btnList.item(i).id != 'tool_zoom_out' && // 縮小
btnList.item(i).id != 'tool_emph') { // 解除
// 押下:可/不可
btnList.item(i).disabled = !enable;
// ボタンイメージ:通常表示/半透明
if (document.all) {
// IE
btnList.item(i).style.filter = (enable ? '' : 'Alpha(Opacity=50)');
} else {
// FF
btnList.item(i).style.opacity = (enable ? '1' : '.50');
}
}
} // end of for (var i = 0; i < length; i++) {
} // end of ツールバー側制御
}
}, // end of setEnableForDrawing()
答案 0 :(得分:2)
你忘了添加b:)
for (var i = 0; i < length; i++) {
if (btnList.item(i).id != targetButtonId) {
// 押下:可/不可
btnList.item(i).disabled = !enable;
// ボタンイメージ:通常表示/半透明
if (document.all) {
// IE
btnList.item(i).style.filter = (enable ? '1' : 'Alpha(Opacity=50)');
} else {
// FF
**b**tnList.item(i).style.opacity = (enable ? '1' : '.5');
}
}
}
跟踪问题:firefox有一个document.all变量:[object HTML document.all class] 这就是为什么它也适用于FF。在这个txt下修复,如果它返回-1那么这意味着它不是,即欢呼配偶。
function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
var rv = -1; // Return value assumes failure.
if (navigator.appName == 'Microsoft Internet Explorer')
{
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null)
rv = parseFloat( RegExp.$1 );
}
return rv;
}