jQuery 不会在第一次点击时触发,而是在第二次点击时触发

IT技术 javascript jquery reactjs
2021-04-27 00:53:44
$(document).ready(function() {
    $('#talents li').on('click',  'div', function(event) {
        event.stopPropagation();

        $(event.target).addClass('--active');
        talents_points = $('.--active').length;
        _this.setState({ points: talents_points });
        this.handlePointsMaxed(talents_points);
    });
    $('.no-right-click').bind('contextmenu', function(event) {
        event.stopPropagation();

        $(event.target).removeClass('--active');
        talents_points = $('.--active').length;
        _this.setState({ points: talents_points });
        // this.handlePointsMaxed(talents_points);

        return false;
    });
});

<ul id="talents">
    <li onClick={this.handlePointsClicks}>
        <div id="talent-stacks" className="talent-image__stacks"></div>
    </li>
</ul>`

知道为什么吗?我很确定它在鼠标按下和点击功能上,但我需要它们来制作我的作品,并且还没有找到另一种将它们结合起来的方法。

编辑:添加了上下文的 HTML 示例

1个回答

我能够解决这个问题,我没有在 react 组件的 componentDidMount 生命周期中正确设置函数。

谢谢各位的意见。