我試圖修改插件以使其更加現代和易於訪問。問題是圖標:我需要添加一些span元素和一些文本,以使其可讀但不可見。在鏈接中添加span元素以使其可訪問(AA)使用javascript
我的javascript如下:
function _createInformationLink(linkText, linkHref) {
var infoLink = document.createElement('a');
_setElementText(infoLink, linkText);
infoLink.href = linkHref;
infoLink.target = '_blank';
infoLink.style.marginLeft = '8px';
return infoLink;
}
我試圖以與.innerHTML注入HTML這樣添加一行:
function _createInformationLink(linkText, linkHref) {
var infoLink = document.createElement('a');
_setElementText(infoLink, linkText);
infoLink.href = linkHref;
infoLink.target = '_blank';
infoLink.style.marginLeft = '8px';
infoLink.innerHTML = "<span class='sr-only'>Close cookie policy</span>";
return infoLink;
}
但沒有奏效。任何建議?
UPDATE:
功能_setElementText如下:
function _setElementText(element, text) {
var supportsTextContent = 'textContent' in document.body;
if (supportsTextContent) {
element.textContent = text;
} else {
element.innerText = text;
}
}
根據您對_setElementText的定義,這可能是您在這裏引起問題的原因。如果您包含'_setElementText'的定義可能會有所幫助。我不知道你的意思是「它沒有工作」,但我想象如果'_setElementText'設置'innerHtml',並且將它設置爲跨度時將被覆蓋。 – quetzaluz
function _setElementText(element,text){IE1不支持textContent,所以我們應該回退到innerText。 var supportsTextContent ='documentContent'in document.body; if(supportsTextContent){element_textContent = text;其他{ element.innerText = text; } } – Matto