根据not null将元素添加到文档OR元素
Adding element to document OR element depending on not null
很难将一个元素添加到另一个元素中。我的方法很独特。基本上,用户要么输入选择器,要么默认为文档。
所以我们有两个按钮,一个指定选择器,另一个不指定选择器。
<button onClick="callFunction({where:'#test'})"> Test selector</button>
<button onClick="callFunction()"> default</button>
以及函数"callFunction":
function callFunction(arguments){
scope= (arguments.where===undefined? $(document) : $(arguments.where));
createElementIn(scope);
}
然后调用createElementIn(scope)函数,并在给定的选择器中创建元素
function createElementIn(scope){
var newdiv = document.createElement('div');
$(newdiv).css("position", "absolute");
$(newdiv).css("left", "500px");
$(newdiv).css("bottom", "500px");
$(newdiv).css("display", "block");
newdiv.innerHTML = str;
scope.append(newdiv);//Over here, it does not append
}
我有一种感觉,我搞不清楚什么时候该做$(scope)。。。以及何时离开它的范围。。。document.body.appendChild工作,但我无法将document.body传递到作用域中。请问,解决这个问题的正确方法是什么?
默认范围应该是body
元素,而不是文档,而且由于元素的绝对位置,元素不可见。
您使用的是本机和jQuery的混合,我已将其更新为jQuery解决方案-您可以向.css({...})
方法添加其他样式
function callFunction(params){
var scope= ($.isPlainObject(params) && params.where) ? $(params.where) : $('body');
createElementIn(scope);
}
function createElementIn(scope){
var newdiv = $('<div />', {
html: 'some content'
}).css({
//position: 'absolute',
display: 'block',
})
scope.append(newdiv);
}
演示:Fiddle
尝试:
function createElementIn(scope){
$('<div/>').css({
position: "absolute",
left: "500px",
bottom: "500px",
display: "block"
}).appendTo(scope);
}
您正在将jQuery与本机javascript混合。只使用jQuery以避免误解。
我遇到了在jquery选择器之前使用$prefix的做法,例如,您可以写:
var $scope = (arguments.where===undefined? $(document) : $(arguments.where));
...
$scope.append(newdiv)
在这种情况下,您将知道不需要像这样用jQuery包装$scope($scope)
相关文章:
- Firefox:点击并更改未附加到文档树中的复选框元素上的事件
- 将事件侦听器添加到文档,而不是签入元素存在,然后添加事件侦听器
- JS触发器值检查在文档加载后添加到页面的元素在加载时更改AND
- 如何获取文档数组中元素的计数-MongoDB
- 使用jQuery访问元素'来自谷歌文档托管的iframe的文本
- 在不引用文档的情况下使用AngularJS获取元素
- 正在获取单击的元素相对于整个文档的索引
- MDN文档中关于弄清楚XUL元素的段落是什么意思:“如何将覆盖扩展转换为无重启”
- 用于修改文档元素的 PHP 代码
- 使用 ajax 将 HTML 文档附加到元素
- 是否有 jQuery 事件用于何时将元素添加到文档中
- getSelection()只能应用于某个元素(而不是整个文档)
- 挂钩文档.使用函数原型创建元素
- 复制和修改元素,以便在html文档的另一部分使用它们
- 获取文档的所有元素,id为'主导航'
- 使用 shift 在具有字符串/数组的文档中查找元素
- 在javascript中阻止文档执行默认操作时,在单个元素中使用默认事件
- 如何切换文档元素的可见性
- javascript中元素/文档高度的事件侦听器
- PHP中的Javascript代码不能访问HTML元素.文档.getElementById不工作