Спасибо вам, ребята, за то, что изучили это - но мне стыдно сказать, что я допустил небрежную ошибку в определении моей карты стилей, которая не повлияла на большинство браузеров, кроме IE8, и которая на самом деле была причиной проблема. Все это время я пытался отлаживать, глядя не на то место.
Здесь была моя ошибка:
styleMap = new OpenLayers.StyleMap({
'default':{
strokeColor: "#FFFFFF",
strokeOpacity: 1,
strokeWidth: 2,
fillColor: "#852C71",
fillOpacity: 1,
pointRadius: 4,
pointerEvents: "visiblePainted",
label : "${label}",
fontColor: "#000000",
fontSize: "10px",
fontFamily: "Verdana",
fontWeight: "bold",
labelAlign: **"${align}",**
labelXOffset: **"${xOffset}",**
labelYOffset: "-10"
}
});
Я указал 2 переменные ($ {align}, $ {xOffset}) в styleMap, для которых я не передавал никакого значения при добавлении объектов в векторный слой. Это привело к поломке IE, тогда как другие браузеры игнорировали его. Я заменил эти переменные на фиксированное значение, и это решило проблему IE8. Извиняюсь за эту глупую ошибку с моей стороны. Спасибо за просмотр.
Lothaire