在本文中,我们将带你了解JavaScript如何将类添加到给定的元素?在这篇文章中,我们将为您详细介绍JavaScript如何将类添加到给定的元素?的方方面面,并解答js给类添加方法常见的疑惑,同时我
在本文中,我们将带你了解JavaScript如何将类添加到给定的元素?在这篇文章中,我们将为您详细介绍JavaScript如何将类添加到给定的元素?的方方面面,并解答js给类添加方法常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的javascript – JQuery:如果表头有一个类,则将类添加到表单元格、javascript – 单击在没有Jquery的情况下将类添加到子元素、javascript – 如何向DOM添加支持角色的元素?、javascript – 如何将click事件添加到元素?。
本文目录一览:- JavaScript如何将类添加到给定的元素?(js给类添加方法)
- javascript – JQuery:如果表头有一个类,则将类添加到表单元格
- javascript – 单击在没有Jquery的情况下将类添加到子元素
- javascript – 如何向DOM添加支持角色的元素?
- javascript – 如何将click事件添加到元素?
JavaScript如何将类添加到给定的元素?(js给类添加方法)
我有一个已经有一个类的元素:
<div>
<img ... id="image1" name="image1" />
</div>
现在,我想创建一个JavaScript函数,将一个类添加到div
(不是替换,而是添加)。
我怎样才能做到这一点?
javascript – JQuery:如果表头有一个类,则将类添加到表单元格
假设我有以下html:
<table>
<thead>
<tr>
<th>Header1</th>
<th>Header2</th>
<th>Header3</th>
</tr>
</thead>
<tbody>
<tr>
<td>Row1</td> //Add<td>Row1</td>
<td>Row1</td> //Add</tr>
<tr>
<td>Row2</td> //Add<td>Row2</td>
<td>Row2</td> //Add</tr>
<tr>
<td>Row3</td> //Add<td>Row3</td>
<td>Row3</td> //Add</tr>
</tbody>
</table>
如果THEAD中的TR包含类“alignRight”或“alignLeft”,我想将相同的类应用于TBODY中的相应TD.
我正在使用JQuery并尝试了以下方法,但它们似乎都没有正常工作:
$('tr').has('th.alignRight').addClass('th.alignRight');
$('tr').has('th.alignLeft').addClass('th.alignLeft');
$('thead.tr').has('th.alignRight').addClass('tbody.th.alignRight');
$('thead.tr').has('th.alignLeft').addClass('tbody.th.alignLeft');
if ($('thead.tr').has('th.alignRight')){
$('tbody.tr').addClass('th.alignRight');
}
if ($('thead.tr').has('th.alignRight')){
$('tbody.tr.td').addClass('alignRight');
}
关于什么可能出错的任何想法?
更新:
我想补充一点,我已经使用.each()循环遍历表.我只需要添加条件,如果当前表头具有该类,则将该相同的类添加到表格单元格中.在当前迭代期间添加额外的迭代听起来会导致性能问题.真的吗?
环:
function(res) {
var tbl_body = "";
$.each(res, function () {
var tbl_row = "";
$.each(this, function (k, v) {
//Irrelevant code
tbl_row += "<td>" + v + "</td>";
})
tbl_body += "<tr>" + tbl_row + "</tr>";
})
$("#print").html(tbl_body);
},
//Other irrelevant code
解决方法:
我认为你没有看到jquery选择器是如何工作的.
$(‘thead.tr’)表示:找到我所有拥有tr类的thead.显然不是你想做的.
这里应该有一个代码:
$('tbody tr td').each(function(index){
//index contains the current td index in the parent tr (1,2,3),(1,2,3)...
//if the corresponding th has a class
if($('thead tr th').eq(index).attr('class') != ''){
//put this class on the current td
$(this).addClass($('thead tr th').eq(index).attr('class'));
}
});
检查td是否有类是没有必要的,因为如果给它一个空参数,addClass什么也不做.
javascript – 单击在没有Jquery的情况下将类添加到子元素
我有一个Jquery不工作的任务,所以我需要一个解决方法来执行添加类事件到div事件的div元素.
我该怎么做呢
为此目的的Jquery将是
$('.wpb_vc_column').click(function(e) {
alert();
e.preventDefault();
$(this).find('.vc_controls').addClass('show-controls');
});
.show-controls {
color: red
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<div>SomeThing</div>
</div>
它基本上是一个wordpress后端的东西,需要在移动设备上可行.
问候
解决方法:
您可以使用querySelectorAll()来选择具有类wpb_vc_column的所有元素,并将click事件与每个元素相关联.然后单击这些元素将查找具有类vc_controls的子元素并将类添加到其中.
function clickedColumn(e){
e.preventDefault();
if(this.querySelector('.vc_controls')){
this.classList.add('show-controls');
}
}
document.querySelectorAll('.wpb_vc_column').forEach(function(el){
el.addEventListener('click', clickedColumn);
});
.show-controls{
color:red;
}
<div>
<div>SomeThing 1</div>
<div>SomeThing 2</div>
</div>
javascript – 如何向DOM添加支持角色的元素?
这是一个微不足道的小提琴来演示这个问题:http://jsfiddle.net/ZJSz4/2/
HTML:
<div ng-app="main"> <div ng-controller="MyCtrl"> <button ng-click="add()" >Add</button> <div id="container"> <div>{{test}}</div> </div> </div> </div>
JS:
angular.module("main",[]).controller("MyCtrl",function($scope) { $scope.add = function() { $("#container").append("<div>{{test}}</div>"); }; $scope.test = 'Test Message'; });
为了防万一,我希望它为每个点击添加一个显示“测试消息”的div,而不是{{test}}.
为什么我需要它?那么,我想使用portlet来排列一些可排序的列(以jQuery可排序的方式).我想像每个portlet都可以是一个组件.
我爬错了山吗?有什么方法来解决这个问题?
编辑:我希望这个简单的例子不会以这种方式结束,但无论如何.最终目标不是为数组中的每个元素显示一个div.
我真正想要的是一个更复杂的控制器.我需要一个有趣的行为的portlet容器.它可能需要决定将每个portlet放在不同的列.它可能会改变布局,并有一个体面的方式重组portlet在这种情况下.等等.
解决方法
这个JSfiddle的例子应该让你走正确的方向.
http://jsfiddle.net/ZJSz4/5/
<div ng-app="main"> <div ng-controller="MyCtrl"> <div id="container"> <button ng-click="add()" >Add</button> <ng-portlet></ng-portlet> </div> </div>
angular.module("main",function($scope) { $scope.test = 'Test Message'; }).directive("ngPortlet",function ($compile) { return { template: '<div>{{test}}</div> ',restrict: 'E',link: function (scope,elm) { scope.add = function(){ console.log(elm); elm.after($compile('<ng-portlet></ng-portlet>')(scope)); } } }; });
javascript – 如何将click事件添加到元素?
<a href="http://example.com/share">Yummy</a>
解决方法
var links = document.getElementsByClassName("MyClass"); links[0].onclick = function() { // put your click handling code here // return(false) if you don't want default click behavior for the link }
由于getElementsByClassName在旧版浏览器中并非普遍可用,因此在不存在时需要填充程序来实现它.或者,您可以通过以下方式获取文档中的所有链接:
var links = document.getElementsByTagName("a");
然后循环浏览该列表,直到找到所需的那个(也许检查类名).
如果您可以在链接上添加ID:
<a href="http://braza.com/share" id="specialLink">Yummy</a>
然后,它只需要这段代码:
document.getElementById("specialLink").onclick = function() { // add code here }
如果您要定期执行此操作,添加事件侦听器比使用onclick属性更具可扩展性,但如果您没有任何框架,则需要一个函数来添加处理旧版本的事件侦听器IE浏览器
关于JavaScript如何将类添加到给定的元素?和js给类添加方法的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于javascript – JQuery:如果表头有一个类,则将类添加到表单元格、javascript – 单击在没有Jquery的情况下将类添加到子元素、javascript – 如何向DOM添加支持角色的元素?、javascript – 如何将click事件添加到元素?等相关内容,可以在本站寻找。
本文标签: