关于jQuery,我是一个新手,我希望能有一种覆盖现有点击功能的方法。
代码如下:
$('.woo-star-rating').on('click', function() {
$('.woo-star-rating-filled').width( $(this).attr('data-rating') * 25 )
});
我想在自己的.js文件中将 25 的数量更改为 21 。
$('.woo-star-rating').on('click', function() {
$('.woo-star-rating-filled').width( $(this).attr('data-rating') * 21 )
});
答案 0 :(得分:4)
您可以使用.off()
方法删除现有的click
事件处理程序,添加新的点击事件。
var $rating = $('.woo-star-rating');
$rating.off('click');
$rating.on('click', function() {
$('.woo-star-rating-filled').width( $(this).attr('data-rating') * 21 )
});
这可以链接到:
$('.woo-star-rating').off('click').on('click', function() {
$('.woo-star-rating-filled').width( $(this).attr('data-rating') * 21 )
});
这是一个有效的例子:
// add junk event
$('#test-button').on('click', function() {
console.log('first button click');
});
// remove first event
$('#test-button').off('click');
// add new event, only this will fire on click
$('#test-button').on('click', function() {
console.log('second button click');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="test-button">Test Button</button>