knockout.js - 淘汰赛绑定后如何访问DOM元素?
问题描述
我想在敲除绑定后访问 DOM 元素。我想访问 tr:first-child
怎么访问??请帮我
$("#account_tab_m2005 table tbody tr:first-child td .popOver").click(function(){
alert("a");
$(this).css('z-index',11);
});
$("#account_tab_m2005 table tbody tr:nth-child(2) td .popOver").click(function(){
$("#account_tab_m2005 table tbody tr:first-child td .popOver").css('z-index',10);
$(this).css('z-index',10);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="account_tab_m2005">
<table>
<tbody data-bind="foreach: orderArray_tab, visible: orderArray_tab().length > 0">
<tr>
<td>...</td>
</tr>
</tbody>
</table>
</div>
解决方案
一种可能的方法是在 foreach 中使用 $index() 为 firstChild 提供不同的模板。看起来你正试图让第一个元素改变它的 css。只需在此处使用不同的类/ID。
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="account_tab_m2005">
<table>
<tbody data-bind="foreach: orderArray_tab, visible: orderArray_tab().length > 0">
<!-- ko if: $index() === 0 -->
<tr id="firstChild">
<td>...</td>
</tr>
<!-- /ko -->
<!-- ko if: $index() !== 0 -->
<tr>
<td>...</td>
</tr>
<!-- /ko -->
</tbody>
</table>
</div>
和
$('#firstChild').css('z-index', 11)
推荐阅读
- javascript - 使用 Java 脚本对 .xlsx(Excel 文件)执行数据验证
- javascript - PDFlib 添加密码?
- mongodb - 如何通过 Oracle DB 连接 Mongo DB?
- regex - 正则表达式
- node.js - 来自 npm 包的 Webpack 预编译钩子
- spring - 授权标头未在招摇调用中发送
- java - 我想在 recyclerview 中显示来自 arraylist 的相同项目
- r - 如何在列表中循环递归多元回归模型?
- php - 从数据库中过滤记录,使其仅显示具有真实值的记录
- web-scraping - 如何每页显示超过 100 个结果?