【发布时间】:2013-01-02 19:27:01
【问题描述】:
我有一个功能是删除类并将其添加到输入标签中,我想当我们添加或删除类时,一个函数应该提醒您已进行更改。
<head>
<script type="text/javascript">
$(function() {
$('a').click(function() {
$('input').removeClass()
var cl = $(this).attr('class')
$('input').addClass(cl)
})
})
function activitydone() {
alert('class change')
}
</script>
<style>
.first { border:solid 1px #F00 }
.second { border:solid 1px #0F0 }
.third { border:solid 1px #00F }
</style>
</head>
<body>
<input type="text" onchange="activitydone()" />
<a href="#" class="first">first</a>
<a href="#" class="second">second</a>
<a href="#" class="third">third</a>
</body>
【问题讨论】:
-
你为什么不把那个代码和改变类的代码一起放进去?
-
请注意正确格式化您的代码。它使您和其他人更容易和更快地阅读和理解它正在尝试做什么。此外,您的 javascript 和 CSS 行末尾缺少
;。 -
“规范”的解决方案是使用 DOM Mutation Observers (stackoverflow.com/questions/2844565/…, developer.mozilla.org/en-US/docs/DOM/MutationObserver),但这通常仅在您的变更检测代码必须分开时才需要从进行更改的代码中。请遵循@Blender 的建议,除非由于某种原因无法做到(例如,您的更改检测代码位于浏览器扩展中)。
标签: javascript jquery