如何在类名改变时再次执行js代码
How to execute js code again whenever a class name change?
很抱歉我提前编辑了格式,因为我已经很长时间没有提问了。我将尽力遵守所有的规则。
所以我有了这个列表它的工作原理就像一个图像轮播:
<div class="carousel">
<ul>
<li class="past"><img src="img1.png"/></li>
<li class="past"><img src="img2.png"/></li>
<li class="current"><img src="img3.png"/></li>
<li class="future"><img src="img4.png"/></li>
<li class="future"><img src="img5.png"/></li>
</ul>
</div>
每当我点击一个图像时,被点击的项目的类名将更改为"current",我将translateX <ul>
使"current"<li>
看起来"居中"。这些都在"carousel" <div>
但是我有另一个div,它的背景是一个空屏幕的iPhone模型:
<div class = "iphone_screen">
<div>
<img class="display" src="blank_screen.png"/>
</div>
</div>
,我想这样做的"iPhone" <div>
:
var imgUrl = $("body").find(".current").find('img').attr('src');
$(".display").attr('src',imgUrl);
但是这个jQuery只会在加载页面时执行一次。
那么,每当我点击<li>
项之一并使类名current
更改时,我如何再次执行jQuery代码?
更新:感谢大家的回复!我觉得自己好蠢......我不知道我为什么问这个问题.........我之前添加了一个点击功能,但它不起作用。然后我开始寻找其他选择。现在我想一下,选择器肯定是错的
由于驱动一切的事件来自于点击li
,您可以在点击任何li
's(在ul
内)在carousel分类div
中运行。
$(".carousel > ul > li").click(function () {
var imgUrl = $("body").find(".current").find('img').attr('src');
$(".display").attr('src',imgUrl);
});
将代码放入函数中。
$(".carousel li").on("click" ,function () {
var imgUrl = $("body").find(".current").find('img').attr('src');
$(".display").attr('src',imgUrl);
});
相关文章:
- Meteor:插入集合后如何执行JS
- 如何在Odoo 9中执行JS文件中的函数
- 匿名自执行js函数内部的全局变量在外部仍然可用
- NumericTextBox-当用户键入数字时执行JS计算.能做到吗
- 引导:响应式设计-当窗口大小从980px调整到979px时执行JS
- 对页面上的所有ID执行JS功能
- 从浏览器访问页面时执行js函数's后退按钮
- 源代码未完全执行.(JS)
- 在执行JS脚本后监视对DOM的更改
- 在表单同步提交后执行 js 吗?
- 在 ubuntu 14.04 VPS 上执行.js文件错误
- 从PHP插入时在MongoDB上执行JS
- 在将ajax内容应用到元素后执行js函数
- Windows Phone浏览器控件执行JS函数来替换src属性
- 到达新页面后执行js
- 用C#在Win 8.1 Chakra中执行JS的一个失败的最小例子
- 在sharepoint显示模板中执行JS
- 在Bootstrap popover内部执行JS
- 从引导程序popover内容内部执行js
- 顺序执行js