// Function for setting text of an element:
function setText(elementId, message)
{
'use strict';
if ( (typeof elementId == 'string')&& (typeof message == 'string') )
{
var output = $(elementId);
if (output.textContent !== undefined)
{
output.textContent = $(elementId).string;
}
else
{
output.innerText =$(elementId).string ;
}
} // End of main if.
} // End of setText() function.
我需要帮助这段代码,我需要定义一个函数名称setText()函数,如下图所示,当我在JS Bin中运行这段代码页面显示代码无法运行时,我找不到哪里错误是。任何人都可以给我一个提示吗?
答案 0 :(得分:0)
您的message
类型检查是不必要的,但如果您想保留它:
function setText(elementId, message){
if((typeof elementId == 'string') && (typeof message == 'string')){
document.getElementById(elementId).innerHTML = message;
}
}
setText("foo", "1")
setText("foobar", "2")
setText("bar", "3")
setText("barfoo", "4")
<p id="foo"></p>
<p id="foobar"></p>
<p id="bar"></p>
<p id="barfoo"></p>
答案 1 :(得分:0)
您可以使用JavaScript原型方式来实现。这有点先进。
HTML:
<span id="spanText"> Your sample Text </span>
首先通过此代码扩充类型:
/ *
增强类型
* /
Function.prototype.addMethod = function(funcName, funcBody){
if(!this.prototype[funcName]){
this.prototype[funcName] = funcBody;
return this;
}};
String.addMethod("setText", function(text){
document.getElementById(this).textContent = text;
});
var elementId = "spanText";
elementId.setText("kkkkkkkkkkk");
将此JS加载到HTML文件下方。 您可以通过这种方式添加任何自定义字符串,数字,数组方法。 请参阅此处的完整示例: https://jsfiddle.net/dmsbilas/wu3cd88w/