Javascript var=$('.div').attr('title').split('')[number]
我正在尝试使用class.selected为我的幻灯片设置var,但它不起作用。我假设我在语法方面有问题,但有趣的是,我花了大约2个小时试图找到正确的方法,但没有找到任何相关的! 那么,这有可能吗?如果有,我该怎么做?拥有类似于:Javascript var=$('.div').attr('title').split('')[number],javascript,jquery,var,attr,Javascript,Jquery,Var,Attr,我正在尝试使用class.selected为我的幻灯片设置var,但它不起作用。我假设我在语法方面有问题,但有趣的是,我花了大约2个小时试图找到正确的方法,但没有找到任何相关的! 那么,这有可能吗?如果有,我该怎么做?拥有类似于: var name = $('.div').attr('title').split('')[3] 我的具体代码是: var currentIndex=$.room\u exp.selected.attr'title'.split[3] 它应该有用吗 基本上,我有一个缩
var name = $('.div').attr('title').split('')[3]
我的具体代码是:
var currentIndex=$.room\u exp.selected.attr'title'.split[3]
它应该有用吗
基本上,我有一个缩略图列表,点击后,我需要一个更详细的版本在正确的幻灯片上打开。我相信我可以访问缩略图标题中的数字并使用.split。请帮忙
代码如下:
<li class="room_c"><div class="room_list" data-room="one"><img src="site-assets/photos/rooms1.jpg"><div class="room-description"><span class="label_bold">Эконом</span><br><span class="desc"> Две кровати</span></div><div class="room_box"><a href="/photos"><span class="camera_left"><img src="site-assets/camera_icon.png" style="height: 16px; width: auto; position: relative;"></span></a><span class="camera_right"><div class="room_mdts" data-room="one" title="Номер класса Эконом">Дополнительная информация</div></span></div></div></li>
<li class="room_c"><div class="room_list" data-room="two"><img src="site-assets/photos/rooms2.jpg"><div class="room-description"><span class="label_bold">Стандарт</span><br><span class="desc">Двойная кровать</span></div><div class="room_box"><a href="/photos"><span class="camera_left"><img src="site-assets/camera_icon.png" style="height: 16px; width: auto; position: relative;"></span></a><span class="camera_right"><div class="room_mdts" data-room="two" title="Номер класса Стандарт">Дополнительная информация</div></span></div></div></li>
etc.
<div id="room_details_holder">
<div id="room_name_and_close"><button class="room_details_close">X</button> </div>
<div class="room_details">
<div id="rooms_nav_bar"><button class="room_previous"><<</button>
<div class="room_name"><div id="room_name"></div></div>
<button class="room_next">>></button></div>
<div class="room_exp" title="Room Type 1" data-room="one" data-number="1">
<div class="room_split_l"><div id="room1_photo"><img src="site-assets/photos/rooms1.jpg"></div> <div class="book"></div> </div>
<div class="room_split_r"><div class="room_description"> </div>
</div>
</div>
<div class="room_exp" title="Room Type 2" data-room="two" data-number="2">
<div class="room_split_l"><div id="room2_photo"><img src="site-assets/photos/rooms2.jpg"></div> <div class="book"></div> </div>
<div class="room_split_r"><div class="room_description"> </div>
</div>
etc.
我正在使用的javascript:
$.room\u mdts.ClickFunction事件{
//击中目标
var target=event.currentTarget;
变量室=$target.dataroom
//First way, by reuse target (only inside this function)
$(target).addClass(room);
//The second, by using selectors
//remove all "selected" classes to all which have both "room" and "selected" classes
$('.room_exp.selected').removeClass("selected");
//add "selected" class to the current room (the selector can also be the target variable)
$('.room_exp[data-room='+room+']').addClass("selected");
});
var currentIndex = 0,
items = $('.room_details .room_exp'),
itemAmt = items.length;
function cycleItems() {
var item = $('.room_details .room_exp').eq(currentIndex);
items.hide();
item.css('display','inline-block');
}
$('.room_next').click(function() {
currentIndex += 1;
if (currentIndex > itemAmt - 1) {
currentIndex = 0;
}
cycleItems();
});
$('.room_previous').click(function() {
currentIndex -= 1;
if (currentIndex < 0) {
currentIndex = itemAmt - 1;
}
cycleItems();
$('#room_name').text($('.room_exp:nth-child('+ (currentIndex+1)+')').attr('title'));
});
$('.room_next').click(function(){
$('#room_name').text($('.room_exp:nth-child('+(currentIndex+1)+')').attr('title'));
});
$('.room_previous').click(function(){
$('#room_name').text($('.room_exp:nth-child('+(currentIndex-1)+')').attr('title'));
});
$('#room_name').text($('[style*="inline-block"].room_exp').attr('title'));
});
因此,单击房间列表时,会打开相应的房间exp,旁边有导航按钮“下一个”和“上一个”。问题是,只有在单击“下一个”或“上一个”并将当前索引设置为0后,标题才会在选择房间时显示,因此在单击“下一个”或“上一个”后,幻灯片会转到第二个或最后一个所以,假设我打开了第六张展开幻灯片并按下“下一步”,它会转到第二张而不是第七张。希望,现在已经清楚了
有什么想法吗
这里有一把小提琴:好的,非常感谢你的小小推动,让我思考
我最终破解了所有的部分,虽然我可能有一些额外的不必要的代码位、副本等,但功能非常完美
我编辑的内容:
我将cycleFunction的一个右括号移到了的末尾。单击函数,即使变量至少对这3个函数是全局的
我将标题编写函数从:$'room\u name'.text$'[style*=inline block].room\u exp.attr'title'
收件人:$'room\u name'.text$'.room\u exp:n子项'+adjIndex+2+.attr'title'
在$'.room\u details\u close.中添加了一些关于.addClass/.removeClass的更改。单击函数{
现在,打开任何缩略图都会立即显示标题右侧的标题,单击可分别将幻灯片更改为下一页和上一页,而标题也会相应更改。关闭展开的菜单并单击不同的缩略图会导致重新写入currentIndex,因此,adjIndex也是如此,因此该函数将在不使用pro的情况下重新启动问题。
请随意使用
新的问题是:您的var没有名称。var=…是无效的语法。但是,请发布相关代码并解释您面临的问题,现在对我来说,您的问题非常不明确抱歉,当然是我的错。这是一个印刷错误,我在实际代码中有一个名称。$'.div'.attr'title'将始终返回第一个值匹配页面中的元素。您的拆分将返回每个字符。显示相关的html和预期结果。您的问题中没有明确的问题陈述好的,很抱歉这么不清楚。我试图发布一个通用表单,而不是确切的代码。P.S.编辑了代码