1

KML ファイルを表示している Google マップ (API 3) があり、チェックボックス付きのコントロール パネルでオンとオフを切り替える機能を作成しました。チェックボックスは、ページの読み込み時にデフォルトでチェックされますが、これは IE7 または IE8 では機能しません。理由がわかりません。追加してみました

object.defaultChecked = true; 

変数のそれぞれに、しかしこれは機能していません。このJavaScriptも追加しようとしましたが、機能していません...

var checkboxes = document.getElementsByTagName('input');

for (var i=0; i<checkboxes.length; i++)  {
  if (checkboxes[i].type == 'checkbox')   {
    checkboxes[i].checked = true;
  }
}

IE7-IE8 が DOM でチェックボックスを処理する方法に謎がありますか? どんな助けでも大歓迎です!

ここに私のコードがあります:

function createTogglers() {

var html = "<form><ul>";
for (var prop in kml) {
    html += "<li class='selected'><span id=\"selector-" + prop + "\"><input type='checkbox' id='" + prop + "'" +
    " onclick='highlight(this,\"selector-" + prop + "\"); toggleKML(this.checked, this.id)' \/></span>" +
    kml[prop].name + "<\/li>";
}
html += "<\/ul><\/form>";

document.getElementById("toggle_box").innerHTML = html;
}


function removeAll() {
for (var prop in kml) {
    if (kml[prop].obj) {
        kml[prop].obj.setMap(null);
        delete kml[prop].obj;
    }

}
}


// Append Class on Select
function highlight(box, listitem) {
    var selected = 'selected';
    var normal = 'normal';
    document.getElementById(listitem).className = (box.checked ? selected: normal);
}

function startup() { 
var checkit = document.getElementById('a');
checkit.checked = true; // Does not work in IE 7-8
checkit.setAttribute('checked', 'checked'); // Does not work in IE 7-8
checkit.checked = 'checked'; // Does not work in IE 7-8
toggleKML(checkit, 'a');
highlight(checkit, 'selector-a');

var checkit2 = document.getElementById('b');
checkit2.checked = true; // Does not work in IE 7-8
checkit2.setAttribute('checked', 'checked'); // Does not work in IE 7-8
checkit2.checked = 'checked'; // Does not work in IE 7-8
toggleKML(checkit2, 'b');
highlight(checkit2, 'selector-b');

var checkit3 = document.getElementById('c');
checkit3.checked = true; // Does not work in IE 7-8
checkit3.setAttribute('checked', 'checked'); // Does not work in IE 7-8
checkit3.checked = 'checked'; // Does not work in IE 7-8
toggleKML(checkit3, 'c');
highlight(checkit3, 'selector-c');

var checkit4 = document.getElementById('d');
checkit4.checked = true; // Does not work in IE 7-8
checkit4.setAttribute('checked', 'checked'); // Does not work in IE 7-8
checkit4.checked = 'checked'; // Does not work in IE 7-8
toggleKML(checkit4, 'd');
highlight(checkit4, 'selector-d');

var checkit5 = document.getElementById('e');
checkit5.checked = true; // Does not work in IE 7-8
checkit5.setAttribute('checked', 'checked'); // Does not work in IE 7-8
checkit5.checked = 'checked'; // Does not work in IE 7-8
toggleKML(checkit5, 'e');
highlight(checkit5, 'selector-e');
4

0 に答える 0