我使用.each()
和before()
來自動插入類'pipe1'
的音頻元素在類'product_name'
的每個元素之前的懸停效果,因爲單個音頻元素不能自身重疊,因此每個按鈕都需要自己的音效。使用jquery的.closest訪問音頻元素不工作?
我知道插入工作,因爲當我檢查頁面,我看到的元素。直接訪問時播放的元素,但現在使用.closest()
它不起作用。任何幫助是極大的讚賞。
以下是生成的HTML,我發現Firefox的「檢查元素」:
<audio class="pipe1">
<source src="/frontshift/audio/pipe1.mp3"></source>
<source src="/frontshift/audio/pipe1.ogg"></source>
</audio>
<span class="product_name">Product</span>
所有我在同一個.hover效果被激活使用的代碼,這是$(".product_name").hover()
下面的代碼成功播放音頻:
$(".pipe1")[0].currentTime = .04;
$(".pipe1")[0].play();
下面的代碼並不:
$(this).closest(".pipe1").currentTime = .04;
$(this).closest(".pipe1").play();
以下警告變成了不確定:
alert($(this).closest(".pipe1").attr("class"));
如果你的代碼是在連接到'.product_name'元素的處理程序,那麼會怎樣'.closest()'能找到''