我正在使用 JavaScript 在我的网站上运行一些 AB 测试。我可以更改<button>
's中的文本,element.innerHTML = "Text that I want"
但使用相同的策略我无法更改<input type="submit">
's 中的文本。
相反,我可以使用 更改提交按钮的值element.value = "Text that I want"
,但不能<button>
以这种方式更改 a 的文本。
所以我的问题是,我怎么知道需要在特定元素上使用哪个函数,以便我可以创建一个处理每种类型元素的算法?
简而言之:我怎么知道是使用element.innerHTML
还是以element.value
编程方式?
注意:不允许使用 jQuery。
示例 - 这是一些将类名作为输入并更改整个页面的元素的代码。有时 a可能具有标识类,但有时<input>
它可能是 a<div>
或。<button>
<p>
var execute = function(experimentName, variation){
var elements = document.getElementsByClassName(experimentName);
for (var j = 0; j < elements.length; j++) {
if (typeof(variation) == "function")
{
variation.call(elements[j]);
}
else
{
elements[j].value = variation;
//elements[j].innerHTML = variation;
}
}
};