From d5bbe2c6f135418d9623a43609ed81c95e7aaf57 Mon Sep 17 00:00:00 2001 From: Simon Grim Date: Sat, 24 Oct 2015 01:39:22 +0500 Subject: [PATCH] =?UTF-8?q?replace=20.parents()=20method=20with=20.closest?= =?UTF-8?q?()=20=E2=80=94=20need=20only=20first=20ancestor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/interface_common.js | 32 ++++++++++++++++---------------- js/mobile_abstract.js | 4 ++-- js/twister_directmsg.js | 12 ++++++------ 3 files changed, 24 insertions(+), 24 deletions(-) diff --git a/js/interface_common.js b/js/interface_common.js index 762a686..7966766 100644 --- a/js/interface_common.js +++ b/js/interface_common.js @@ -479,7 +479,7 @@ function reTwistPopup(event, post, textArea) { } if (typeof post === 'undefined') - post = $.evalJSON($(event.target).parents('.post-data').attr('data-userpost')); + post = $.evalJSON($(event.target).closest('.post-data').attr('data-userpost')); var modal = openModal({ classBase: '.prompt-wrapper', @@ -495,7 +495,7 @@ function reTwistPopup(event, post, textArea) { modal.content.find('.switch-mode') .text(polyglot.t('Switch to Reply')) .on('click', (function(event) {replyInitPopup(event, post, - $(event.target).parents('form').find('textarea').detach());}).bind(post)) + $(event.target).closest('form').find('textarea').detach());}).bind(post)) ; var replyArea = modal.content.find('.post-area .post-area-new'); @@ -533,7 +533,7 @@ function replyInitPopup(e, post, textArea) { modal.content.find('.switch-mode') .text(polyglot.t('Switch to Retransmit')) .on('click', (function(event) {reTwistPopup(event, post, - $(event.target).parents('form').find('textarea').detach())}).bind(post)) + $(event.target).closest('form').find('textarea').detach())}).bind(post)) ; var replyArea = modal.content.find('.post-area .post-area-new').addClass('open'); @@ -661,7 +661,7 @@ function postReplyClick(e) { if (!post.hasClass('original')) replyInitPopup(e, $.evalJSON(post.find('.post-data').attr('data-userpost'))); else { - if (!post.parents('.post.open').length) + if (!post.closest('.post.open').length) postExpandFunction(e, post); composeNewPost(e, post.find('.post-area-new')); } @@ -743,12 +743,12 @@ var usePostSpliting = false; function replyTextInput(event) { var textArea = $(event.target); - var textAreaForm = textArea.parents('form'); + var textAreaForm = textArea.closest('form'); if (textAreaForm.length) { if ($.Options.unicodeConversion.val !== 'disable') textArea.val(convert2Unicodes(textArea.val(), textArea)); - if (usePostSpliting && !textArea.parents('.directMessages').length) { + if (usePostSpliting && !textArea.closest('.directMessages').length) { var caretPos = textArea.caret(); var reply_to = textArea.attr('data-reply-to'); var tas = textAreaForm.find('textarea'); @@ -875,12 +875,12 @@ function replyTextUpdateRemaining(ta) { ta = ta.target; if (ta === document.activeElement) { var textArea = $(ta); - var textAreaForm = textArea.parents('form'); + var textAreaForm = textArea.closest('form'); if (textAreaForm.length) { var remainingCount = textAreaForm.find('.post-area-remaining'); var c = replyTextCountRemaining(ta); - if (usePostSpliting && !textArea.parents('.directMessages').length && splitedPostsCount > 1) + if (usePostSpliting && !textArea.closest('.directMessages').length && splitedPostsCount > 1) remainingCount.text((textAreaForm.find('textarea').index(ta) + 1).toString() + '/' + splitedPostsCount.toString() + ': ' + c.toString()); else @@ -913,8 +913,8 @@ function replyTextCountRemaining(ta) { var textArea = $(ta); var c; - if (usePostSpliting && !textArea.parents('.directMessages').length && splitedPostsCount > 1) { - c = 140 - ta.value.length - (textArea.parents('form').find('textarea').index(ta) + 1).toString().length - splitedPostsCount.toString().length - 4; + if (usePostSpliting && !textArea.closest('.directMessages').length && splitedPostsCount > 1) { + c = 140 - ta.value.length - (textArea.closest('form').find('textarea').index(ta) + 1).toString().length - splitedPostsCount.toString().length - 4; var reply_to = textArea.attr('data-reply-to'); if (typeof reply_to !== 'undefined' && !checkPostForMentions(ta.value, reply_to, 140 -c -reply_to.length)) @@ -931,7 +931,7 @@ function replyTextKeySend(event) { $('.dropdown-menu').css('display') === 'none') || ((event.metaKey || event.ctrlKey) && $.Options.keysSend.val === 'ctrlenter')) { var textArea = $(event.target); - var textAreaForm = textArea.parents('form'); + var textAreaForm = textArea.closest('form'); var buttonSend = textAreaForm.find('.post-submit'); if (!buttonSend.length) buttonSend = textAreaForm.find('.dm-submit'); @@ -1413,11 +1413,11 @@ function postSubmit(e, oldLastPostId) { return; } - if (btnPostSubmit.parents('.prompt-wrapper').length) + if (btnPostSubmit.closest('.prompt-wrapper').length) closePrompt(); else { textArea.val('').attr('placeholder', polyglot.t('Your message was sent!')); - var tweetForm = btnPostSubmit.parents('form'); + var tweetForm = btnPostSubmit.closest('form'); var remainingCount = tweetForm.find('.post-area-remaining'); remainingCount.text(140); @@ -1639,7 +1639,7 @@ function elemFitNextIntoParentHeight(elem) { function inputEnterActivator(event) { var elemEvent = $(event.target); - elemEvent.parents(event.data.parentSelector).find(event.data.enterSelector) + elemEvent.closest(event.data.parentSelector).find(event.data.enterSelector) .attr('disabled', elemEvent.val().trim() === ''); } @@ -1652,7 +1652,7 @@ function setTextcompleteOnEventTarget(event) { function setTextcompleteOnElement(elem, req) { elem = $(elem); elem.textcomplete(req, { - appendTo: (elem.parents('.dashboard').length) ? elem.parent() : $('body'), + appendTo: (elem.closest('.dashboard').length) ? elem.parent() : $('body'), listPosition: setTextcompleteDropdownListPos }); } @@ -1666,7 +1666,7 @@ function unsetTextcompleteOnEventTarget(event) { function setTextcompleteDropdownListPos(position) { position = this._applyPlacement(position); - if (this.option.appendTo.parents('.dashboard').length > 0) { + if (this.option.appendTo.closest('.dashboard').length > 0) { position.position = 'fixed'; position.top = (parseFloat(position.top) - window.pageYOffset).toString() + 'px'; } else diff --git a/js/mobile_abstract.js b/js/mobile_abstract.js index 8fe3e14..f168655 100644 --- a/js/mobile_abstract.js +++ b/js/mobile_abstract.js @@ -47,7 +47,7 @@ var MAL = function() $dmChatList.listview('refresh'); $.mobile.silentScroll( $(".dm-form").offset().top ); } else { - var modalContent = dmConvo.parents(".modal-content"); + var modalContent = dmConvo.closest(".modal-content"); modalContent.scrollTop(modalContent[0].scrollHeight); } } @@ -498,7 +498,7 @@ var MAL = function() if ($.hasOwnProperty('mobile')) { return postLi.siblings().length; } else { - return postLi.parents('.module.post.original.open').find('.post.related').length; + return postLi.closest('.module.post.original.open').find('.post.related').length; } }; } diff --git a/js/twister_directmsg.js b/js/twister_directmsg.js index f51883b..18fbb92 100644 --- a/js/twister_directmsg.js +++ b/js/twister_directmsg.js @@ -270,7 +270,7 @@ function openGroupMessagesNewGroupModal() { ; modal.content.find('.create').on('click', function (event) { var elemEvent = $(event.target); - var elemForm = elemEvent.parents('.module') + var elemForm = elemEvent.closest('.module'); var peersToInvite = elemForm.find('.invite').val().toLowerCase().match(/@\w+/g); if (peersToInvite) @@ -307,9 +307,9 @@ function openGroupMessagesJoinGroupModal() { .attr('data-screen-name', groupChatAliases[i]) .on('click', function (event) { var elemEvent = $(event.target); - elemEvent.parents('.module').find('.join') + elemEvent.closest('.module').find('.join') .attr('disabled', - !elemEvent.parents('.groups-list').find('input:checked').length); + !elemEvent.closest('.groups-list').find('input:checked').length); }) ; item.find('.twister-user-name') @@ -325,7 +325,7 @@ function openGroupMessagesJoinGroupModal() { modal.content.find('.join').on('click', function (event) { var elemEvent = $(event.target); - var groups = elemEvent.parents('.module').find('.groups-list input:checked'); + var groups = elemEvent.closest('.module').find('.groups-list input:checked'); for (var i = 0; i < groups.length; i++) groupMsgInviteToGroup(groups[i].getAttribute('data-screen-name'), [defaultScreenName]); @@ -335,7 +335,7 @@ function openGroupMessagesJoinGroupModal() { modal.content.find('.secret-key-import, .username-import').on('input', importSecretKeypress); modal.content.find('.import-secret-key').on('click', function (event) { - var elemModule = $(event.target).parents('.module'); + var elemModule = $(event.target).closest('.module'); var groupAlias = elemModule.find('.username-import').val().toLowerCase(); var secretKey = elemModule.find('.secret-key-import').val(); @@ -490,7 +490,7 @@ function initInterfaceDirectMsg() { peersToInvite); elemInput.val(''); - elemEvent.parents('.invite-form').toggle(); + elemEvent.closest('.invite-form').toggle(); // TODO reload group members list });