最接近jQuery无法正常工作
当用户点击.dropzone-upload-btn
元素时,我尝试通过jQuery点击.dropzone
类。 我有这个代码,但它没有做任何事情。 知道为什么吗?
这是jQuery代码(简化)
$('.dropzone-upload-btn').on("click", function() { return $(this).closest('.dropzone').click(); });
closest
看匹配的元素及其祖先。 你可能想要siblings
:
$('.dropzone-upload-btn').on("click", function() { return $(this).siblings('.dropzone').click(); });
参考文献:
当然,如果您100%确定.dropzone
元素将紧接在.dropzone-upload-btn
元素之前,那么您可以使用prev
或prevAll
:
$('.dropzone-upload-btn').on("click", function() { return $(this).prev('.dropzone').click(); });
参考文献:
如果您知道目标元素将在匹配的元素之前,但不一定在之前,则可以使用prevAll
。 prev
只会看到第一个 眼前的兄弟姐妹。
prevAll
和siblings
之间的区别在于siblings
姐妹在匹配元素之前和之后查看兄弟姐妹,而prevAll
只关注它之前的兄弟姐妹。