Comment faire pour masquer le contenu lorsque la case est cochée et la case afficher lorsque la case n'est pas cochée?

0

La question

J'ai un de médias sociaux de la page d'accueil du fil d'actualité bloqueur chrome extension. Je veux déployer une nouvelle fonctionnalité dans ma prochaine version où les utilisateurs peuvent activer l'alimentation de sites individuels ou désactivée dans le menu des paramètres. J'ai construit une settings.html et un background.js fichier. Settings.html seront les paramètres de la page où les utilisateurs peuvent activer les flux sur on ou off avec les cases à cocher.

Ce que je veux le code pour le faire: je veux que la page d'accueil du fil d'actualité de se cacher si l'utilisateur coche la case, sinon, je veux le nourrir à montrer.

Je soupçonne que le code ne fonctionne pas parce que j'ai besoin de faire quelques modifications à mon manifeste.fichier json.

Le fichier manifeste est la suivante (j'ai enlevé privé des trucs avec des "//"

{
    "manifest_version": 2,
    "name": "//",
    "version": "//",
    "description": "//",
    "author": "//",

    "icons": {
        "128": "//"
    },

    "content_scripts": [{
        "html": ["settings.html"],
        "js": ["jquery-3.6.0.min.js", "background.js"],
        "css": ["tiktok.css", "linkedin.css", "youtube.css", "insta.css", "facebook.css", "twitter.css", "reddit.css", "settings.css"],
        "matches": ["https://www.tiktok.com/*", "https://www.linkedin.com/*", "https://www.youtube.com/*", "https://www.instagram.com/*", "https://www.facebook.com/*", "https://twitter.com/*", "https://www.reddit.com/"]
    }],
    
    "background":
    {
        "scripts": ["jquery-3.6.0.min.js", "background.js"]
    },

    "browser_action": {
        "default_title": "//",
        "default_popup": "//"
    }
}

Le code HTML:

<!DOCTYPE html>
<html>
    <head>
        <meta charset = ”UTF-8”>
        <script src="jquery-3.6.0.min.js"></script>
        <script src = "background.js"></script>
        <title>Settings</title>
    </head>
    <body class="settings">
        <h1 class = "classa">Settings</h1>
        <h2>Feed Blocking Preferences</h2>
        <h4>Checkboxes to turn all or individual feeds on or off.</h4>
        <input type="checkbox" class = "jiji" id="fbbox">//</input>
    </body>
</html>

Dans le code ci-dessous, la classe "jiji" est mon élément d'entrée (la case) dans le settings.html fichier. La classe "tn0ko95a" est pour la classe qui cache la page d'accueil du fil d'actualité sur un site web social media. Ce n'est pas ma propre classe, je l'ai obtenu de faire "inspecter l'élément" sur les médias sociaux site web.

Ce code fonctionne:

$(function () {
 $(".tn0ko95a").hide();
});

Mais quand je ajouter de plus à ce code, il ne fonctionne pas:

$(function () {
  $(".jiji").click(function () {
    if ($(this).is(":checked")) {
      $(".tn0ko95a").hide();
    } else {
      $(".tn0ko95a").show();
    }
  });
});

Alors pourquoi est le dernier code ne fonctionne pas?

1

La meilleure réponse

0

Essayez de changer au lieu de cliquez sur

$(function () {
  $(".jiji").change(function () {
    if ($(this).is(":checked")) {
      $(".tn0ko95a").hide();
    } else {
      $(".tn0ko95a").show();
    }
  });
});

Ou vous pouvez utiliser la souris vers le bas voir cet exemple jQuery case à cocher modifier et cliquez sur l'événement

2021-11-18 19:51:06

Merci. Quel est le HTML de l'élément d'entrée? Tout ce que vous me recommandez changer? J'ai entendu dire que nous n'avons pas besoin d'ajouter onchange ou onclick = ... si à l'aide de jquery. Est-ce vrai?
abc_13

<input type="checkbox" class = "jiji" id="fbbox" />
Wamiq Rehman

Nous ne sommes pas l'ajout de tout événement onchange dans la saisie de la réponse donnée est entièrement pris en charge par jquery
Wamiq Rehman

Hey! La réponse n'a pas de travail. Je pense que je besoin de faire quelques changements pour le manifeste. Peut-être que j'ai besoin d'utiliser certaines API google chrome pour faire ce travail.
abc_13

Une question quel élément dans votre code(ou de tout autre élément non à partir de votre code) que vous souhaitez masquer
Wamiq Rehman

Ainsi, la classe est un élément div avec d'autres éléments à l'intérieur. Essentiellement, il se cache de la page d'accueil d'échange de news sur un site web social media.
abc_13

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................