尝试仅为单个实例更改对象的值。
我试图创建一个小型库,它可以完成jQuery所做的一些事情,只是为了学习技巧。
我目前在将元素保留在对象中时遇到问题。
工作示例:
Brain('#test').html('a'); // this will change the innerHTML of #test with "a".
不工作的例子:
var a = Brain('#test');
var b = Brain('#test2');
a.html('a'); // should change content of #test to "a", but changes content of #test2 to "a"
我的JS:
// create the brain function to select elements
var Brain = function(selector, context)
{
if (typeof context == 'undefined')
var context = document;
Brain.elements = context.querySelector(selector);
return Brain;
};
// set and get innerHTML of element
Brain.html = function(content)
{
if (typeof content != 'undefined')
Brain.elements.innerHTML = content;
return Brain.elements.innerHTML;
};
// testing
var a = Brain('#test');
var b = Brain('#test2');
a.html('a');
b.html('b');
我的HTML
<p id="test">test</p>
<p id="test2">test2</p>
答案 0 :(得分:0)
您好我刚刚完成了您的代码。循环旋转两次并以#test2
id结束。这意味着Brain
包含#test2
的元素,这就是为什么第二个元素正在发生变化的原因。
更改代码如下所示
var a = Brain('#test').html('a');
var b = Brain('#test2').html('b');
快乐编码