如何通过知道节点的值来访问dom&&只要知道价值就可以得到手风琴的索引
How to access the dom by knowing the value of a node && Getting the index of accordion by just knowing value
我有两个问题:
1) 由于我对html内容有类似的结构,唯一的区别是类标题内容不同。我还尝试使用$(div.title:contains("cat"))$(div.title).text()="cat")
2) 如何通过检查$(diva)内容是必需的内容来获得手风琴的索引。我尝试使用$(div a).text()=="cat"
在此处检查代码:
HTML1内容
<div class="mod moduleselected" id="mod969">
<div class="content module moduleselect">
<div class="hd" ><div class="inner">
<div class="title">cat</div>
<ul class="terminallist"></ul>
<ul class="buttons">
<li class="help"></li>
<li class="show" ></li>
</ul>
</div>
</div>
</div>
<div class="mod moduleselected" id="mod969">
<div class="content module moduleselect">
<div class="hd" ><div class="inner">
<div class="title">rat</div>
<ul class="terminallist"></ul>
<ul class="buttons">
<li class="help"></li>
<li class="show" ></li>
</ul>
</div>
</div>
</div>
<div class="mod moduleselected" id="mod969">
<div class="content module moduleselect">
<div class="hd" ><div class="inner">
<div class="title">dog</div>
<ul class="terminallist"></ul>
<ul class="buttons">
<li class="help"></li>
<li class="show" ></li>
</ul>
</div>
</div>
</div>
Accordian
<div id="dia">
<div id="dialog" title="Detailed FeedBack ">
<div id="accordion">
<h3><a href="#">dog</a></h3>
<h3><a href="#">cat</a></h3>
<h3><a href="#">rat</a></h3>
</div>
</div>
</div>
Javascript
$('div .title').mouseover(function() {
if($("div a").text().indexOf("cat")!=-1)
{
$("#accordion").accordion("activate", 1);
}
$('div .title').mouseleave(function(){$("#accordion").accordion("activate", -1); });
});
以下是我试图用这段javascript代码做的事情。当我把鼠标放在猫的东西上时,我想打开装有猫的东西的手风琴。当我离开它关闭手风琴选择。
当我把鼠标悬停在html内容上时,cat,rat。它应该并排打开那些内容的手风琴按钮。示例:我在rat(html内容)上悬停,我应该看到手风琴rat打开(或活动,即内容可见)。
更新(见演示)
听起来你想要这样的东西:当内容部分悬停在上面时,找到该部分的标题,将其文本与手风琴中<a>
元素的文本相匹配,然后激活该部分:
$(function() {
$("#accordion").accordion();
var links = $('#accordion a').map(function() {
return $(this).text().trim().toLowerCase();
}).toArray();
$('div.content').mouseover(function() {
var title = $(this).find('div.title').text().toLowerCase();
var index = links.indexOf(title);
if (index != -1) {
$("#accordion").accordion("activate", index);
}
});
});
p.S.jQuery也有一个.hover()
方法。
它应该像下面一样简洁(有可能的小调整):
$('.content .title').hover(function(e){
var index = this.textContent.split(/'W/)[1] - 1;
$("#accordion").accordion('activate', index);
});
使用HTML时要小心,因为这个正则表达式过于简单,因为它只获取最后一个"单词",在您的示例中,这个单词是一个数字。我们减去一得到一个从零开始的索引。如果向元素中添加更多的文本,则会中断。
请参阅:http://jsfiddle.net/35yGV/
相关文章:
- 有没有一个抽象层,这样我就可以集成一次,然后使用pusher、pubnub或faye
- 只要用户将鼠标悬停在jQuery中的某个元素上,就可以执行多次单击
- AngularJS在不使用变量的情况下将服务注入模块中,这样就可以缩小它
- 如何绑定到这个,这样我就可以在这个coffeescript中正确地调用React中的setState
- 如何通过知道节点的值来访问dom&&只要知道价值就可以得到手风琴的索引
- 如何用程序读取和解析gruntfile,这样我就可以修改它并再次保存
- setTimeout()是如何实现的,这样它就可以在不阻塞主线程的情况下跟踪经过的时间
- JQuery动画打断了脚本,但如果没有它,脚本就可以工作
- 如果我在其中使用alert,Javascript代码就可以工作,否则它'It’不起作用
- 在输入字段上使用它-can'我不能从函数中取出变量,这样我就可以使用它了
- lunr:返回搜索词的词干,这样我就可以在结果中突出显示它
- 如何只需一次调用就可以将对象数组保存到mongoose DB中
- Hapi.js文件上传我如何获取文件,这样我就可以在上面使用imageMagick命令行工具
- 我怎么能"保存“;变量客户端,这样我就可以在其他java脚本事件中使用它
- 通过小部件设置第三方cookie,这样我以后就可以识别用户了
- 如何更改当前打开的链接的文本颜色,并保持未打开链接的默认颜色?这样用户就可以知道他现在在哪个链接上
- 将值从一个html表单移动到另一个,这样一个表单就可以提交自己和另一个表单的值
- 2 pdf'It’点击一下网站就可以打开了
- 将和.html(墙帖)加载到不同的页面(这样我就可以在所有想要添加的页面中都有墙帖),使用angular
- 有没有一种方法可以把鼠标悬停在上面,这样它就可以'It’他不那么烦躁