将jQuery的parent()和sibling()调用转换为纯Javascript
Converting jQuery parent() and siblings() calls to pure Javascript
我遇到了一些麻烦,我正在工作的网站与jQuery有冲突,我不知道如何将其转换为Javascript,或者是否有可能:
$(document).ready(function(){
$('div.links').parent('td').siblings().find('a.schedule')
});
这是冗长的,但JS的冗长是我们都喜欢jQuery的一个原因:
var links = document.getElementsByClassName('links');
var hrefs = [];
for ( var i = 0; i < links.length; ++i )
{
var n = links[i];
var pn = n.parentNode;
if (n.parentNode.tagName.toLowerCase() == 'td')
{
var sib = n.parentNode.nextElementSibling;
if (sib && sib.tagName.toLowerCase() == 'td')
{
var as = sib.getElementsByClassName('schedule');
for ( var j = 0; j < as.length; ++j )
hrefs.push(as[j]);
}
}
}
// highlight what we've found
for ( i = 0; i < hrefs.length; ++i )
hrefs[i].className = 'selected';
.selected {
background-color: yellow;
}
<table>
<tr>
<td><div class="links">links</div></td>
<td><a href="#" class="schedule">schedule</a></td>
</tr>
<tr>
<td></td>
<td><a href="#" class="schedule">schedule</a></td>
</tr>
<tr>
<td><div class="links">links</div></td>
<td><a href="#" class="schedule">schedule</a></td>
</tr>
<tr>
<td><div class="links">links</div></td>
<td><a href="#" class="schedule">schedule</a></td>
</tr>
<tr>
<td></td>
<td><a href="#" class="schedule">schedule</a></td>
</tr>
</table>
相关文章:
- 使用键/代码转换JavaScript数组
- NS_ERROR_XPC_BAD_CONVERT_JS:无法转换JavaScript参数arg 0[nsIDOMWind
- 转换Javascript中的DayOfYear值以用于Flot
- 转换Javascript日期格式
- 字符串大小写转换 javascript
- 一个很好的文本到语音转换JavaScript库
- JQuery 函数突然停止工作,转换 Javascript 参数时出错
- 转换 JavaScript 代码
- 需要转换Javascript数组的格式
- 转换javascript中的日期格式
- 循环以转换JavaScript对象
- jQuery Post中的错误:无法转换JavaScript参数
- UglifyJS转换javascript代码
- Html到Haml的转换javascript
- 正在转换Javascript日期
- 转换Javascript关联对象并用PHP输出
- 转换JavaScript'这'到jQuery'$(这个)'
- 转换JavaScript数组
- 无法转换JavaScript参数arg 0 [nsIDOMWindow.getComputedStyle]
- jQuery美元.Firefox中的ajax错误:"无法转换JavaScript参数"