所以我有这个简单的HTML
<div class="song">
<img src="http://o.scdn.co/300/40e3ec60c92513f724f47ce71baad1e496627107">
</div>
这个简单的jQuery
$(".song").on( "mouseenter", function() {
$(this).css( "background-color", "red" );
alert('bla');
});
事件不会发生。
虽然
$(".naujienuKategorija").on( "mouseenter", function() {
$(this).css( "background-color", "red" );
});
在
上工作得很好<p class="naujienuKategorija">Apklausa</p>
哪一页在同一页上。
.song有以下css
.song {
padding-bottom: 12px;
margin-bottom: 15px;
border-bottom: 1px solid #E0E0E0;
overflow: hidden;
}
我显然错过了一些东西......很明显。
答案 0 :(得分:2)
为了将事件绑定到元素,必须准备好并找到该元素。执行此操作的一般方法是将事件绑定放在$(document).ready
中,因为它可以确保访问页面上的原始元素。所以使用这个:
$(document).ready(function () {
$(".song").on( "mouseenter", function() {
$(this).css( "background-color", "red" );
alert('bla');
});
});
另一种选择是在</body>
之前或之前的任何时间 目标元素后,将您的事件绑定放在页面上。例如:
<div class="song"></div>
<div class="song></div>
<script type="text/javascript">
$(".song").on("mouseenter", function () {
});
</script>
它可能一直在使用.naujienuKategorija
元素,因为您使用的是上面的第二种方法,但没有使用.song
元素。