Event binding of body.ready on mobile devices causes abnormal switching of the sidebar
Les mainteneurs répondent en général sous 2 jours
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 45/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- javascript
- Domaine
- frontend
Piste de recherche
Commencez par le CodeSandbox reproductible et la fonction btn autour des lignes 1932–1938. Reproduisez le comportement sur un appareil mobile en utilisant button.sidebar-toggle, puis inspectez la liaison des clics sur body et vérifiez que les clics sur la barre latérale ne déclenchent plus de basculement involontaire, tandis que le bouton continue de fonctionner.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Bug Report
On mobile devices, docsify will add a click event to the body element.
When the event is not removed, clicking any area in the left sidebar will trigger its switching function.
After removing the event, the function is normal.
Its position is between 1932 -> 1938:
function btn(el) {
var toggle = function (_) {return body.classList.toggle('close'); };
el = getNode(el);
if (el === null || el === undefined) {
return;
}
on(el,'click', function (e) {
e.stopPropagation();
toggle();
});
// this position
isMobile &&
on(
body,
'click',
function (_) {return body.classList.contains('close') && toggle();}
);
}
Just like in the picture, this is when I did not remove the event:

When I removed the event, everything returned to normal:

I don't understand the meaning of this event, because after I disable it, I feel that everything is normal.
Steps to reproduce
On mobile devices, click button.sidebar-toggle. Click again on any area in the sidebar.
What is current behaviour
It will automatically close the sidebar.
What is the expected behaviour
Only when the button.sidebar-toggle button is clicked, can the sidebar toggle function be triggered.
Other relevant information
-
Bug does still occur when all/other plugins are disabled?
-
Your OS: ubuntu 20.04.3 LTS
-
Node.js version: 10.24.1
-
npm/yarn version: 6.4.12
-
Browser version: any browser
-
Docsify version: 4.4.3
-
Docsify plugins:
gitalk
search
emoji
docsify-copy-code
countable
pangu
sidebar
progress
gifcontrol
pagination
Please create a reproducible sandbox
Mention the docsify version in which this bug was not present (if any)
- Langage dominant
- JavaScript
- Étoiles
- 31.5k
- Forks
- 5.8k
- Merge moyen
- 2 j 14 h
- PR mergées (30 j)
- 5
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de docsifyjs/docsify
-
Query parameter values are truncated at a second equals signPeut-être pris @xu91102 l’a pris il y a 22 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 2 jours
-
Bullet points beginning with inline math: subsequent text formatting not recognised correctlyOuvertebug Triage
Difficulté 3/5 1-2 jours Accessibilité débutants 66/100
Les mainteneurs répondent en général sous 2 jours
-
Cached AJAX responses lose status metadata exposed through vm.route.responsePeut-être pris @xu91102 l’a pris il y a 22 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 2 jours
-
In the Edge browser, the character `{docsify-updated}` is not replacedPeut-être à nouveau libre @AmanUllah687 l’a pris il y a 75 jours, et aucune pull request n’est ouverte. Ouvertewait for information
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
docsifyjs/docsify#2681 · 11 commentaires ·
Les mainteneurs répondent en général sous 2 jours
-
Nested/Recursive includesOuvertefeature request Triage
Difficulté 4/5 3-5 jours Accessibilité débutants 38/100
docsifyjs/docsify#2643 · 5 commentaires ·
Les mainteneurs répondent en général sous 2 jours
Toutes les issues de docsifyjs/docsify
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 65/100
521xueweihan/HelloGitHub#4025 ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
iib0011/omni-tools#479 ·
Les mainteneurs répondent en général sous 1 jour
-
triage
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100
pixelfed/pixelfed-rn#508 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
yetone/magpie#2844 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour