javascript - Comment puis-je rendre ce code JS utile?
淡淡烟草味
淡淡烟草味 2017-05-19 10:26:32
0
3
499

Une bannière a été ajoutée à la page mobile. Cliquez sur le calque de bannière p pour afficher un p initialement caché.
Le code a été trouvé, mais l'ajout de HTML a toujours échoué. J'espère que quelqu'un pourra m'aider. Le code est le suivant :


$(document).ready(function(){

$("#ma").click(function(e){
    e.stopPropagation();
    $("#lyt").removeClass('hide');
});
$(".cle").click(function(){
    $("#lyt").addClass('hide');
});
$('.layout').click(function() {
    if (!$("#lyt").hasClass("hide")) {
        $("#lyt").addClass("hide");
    }
});
$("#lyt").click(function (e) {
    e.stopPropagation();//阻止事件向上冒泡
});
    
    
    

Le code HTML est le suivant

<body>
<p class="bottom" id="ma">
    <p class="btn btn1">
        <p class="weixin"><img src="{maccms:path_tpl}/images/gzorange.svg"></p><span class="guanzhu">收藏</span>
    </p>
</p>

<p id="lyt" style="display: none">
    <p class="layout"></p>
    <p class="tc">
        <p><p class="cle"></p><img src="/images/torange.svg" class="cleimg"><span class="st">没时间了,快上车!</span></p>
        <p><img src="/images/b.svg"><p><img src="/images/14922386198576.jpg" class="sb"></p></p></p>
</p>

<script>
$(document).ready(function(){
    $("#ma").click(function(e){
        e.stopPropagation();
        $("#lyt").removeClass('hide');
    });
    $(".cle").click(function(){
        $("#lyt").addClass('hide');
    });
    $('.layout').click(function() {
        if (!$("#lyt").hasClass("hide")) {
            $("#lyt").addClass("hide");
        }
    });
    $("#lyt").click(function (e) {
        e.stopPropagation();//阻止事件向上冒泡
    });
  </script>
</body>
淡淡烟草味
淡淡烟草味

répondre à tous(3)
我想大声告诉你

Votre méthode $(document).ready(function() n'est pas fermée. Je l'ai essayée et ajoutée }); après votre code. Une fois fermée, elle l'est. Cela fonctionne et affiche les éléments cachés lorsque vous cliquez dessus.
(Comme vous n'avez pas publié le style, j'ai deviné et écrit display:none pour hide, mais j'ai trouvé votre id="lyt " utilise style="display: none", vous pouvez simplement lui donner un class="hide")
Le code est le suivant : $(document).ready(function()方法没闭合,我试了下,在你的代码后面加上});闭合后,是可以工作的,点击后显示隐藏的东西。
(由于你没贴样式,所以我自己猜着给hide写了个display:none,但是我发现你的 id="lyt"是用的style="display: none",你直接给它弄个class="hide"吧)
代码如下:

<script>
$(document).ready(function(){
  $("#ma").click(function(e){
      e.stopPropagation();
      $("#lyt").removeClass('hide');
  });
  $(".cle").click(function(){
      $("#lyt").addClass('hide');
  });
  $('.layout').click(function() {
      if (!$("#lyt").hasClass("hide")) {
          $("#lyt").addClass("hide");
      }
  });
  $("#lyt").click(function (e) {
    e.stopPropagation();//阻止事件向上冒泡
  });
});
</script>

由于你没贴样式,所以我大概猜着测了下:

  • 页面上默认是只有 “收藏” 栏id="ma"

  • 点击收藏栏,显示id="lyt",这里面包含了class="layout"class="tc",而class="tc"里还包含了class="cle"

  • 点击class="cle"id="lyt"会隐藏

  • 点击class="layout"id="lyt"也会隐藏,没弄懂的是这里你为啥会用个判断,layout是包含在 lyt 里的,只可能 lyt 显示了,才能看到 layout,才能点到它吧。。。所以,也就是 layout 能看到的时候,应该是 lyt 没有 hide样式的时候啊,干嘛还判断

大概是由于没有样式,也不太明白你页面上那些都是干嘛的,所以可能没理解好吧。你把 ready rrreee

Comme vous n'avez pas posté le style, j'ai fait une supposition et je l'ai testé : 🎜
  • 🎜Sur la page, il n'y a que la colonne "Favoris" par défaut id="ma"🎜
  • 🎜Cliquez sur la barre des favoris pour afficher id="lyt", qui comprend class="layout" et class="tc" , et class="tc" contient également class="cle"🎜
  • 🎜Cliquez sur class="cle" et id="lyt" sera masqué🎜
  • 🎜Cliquez sur class="layout" et id="lyt" sera également masqué. Ce que je ne comprends pas, c'est pourquoi vous utilisez un jugement ici, mise en page. is Il est inclus dans lyt. Ce n'est que lorsque lyt est affiché que vous pouvez voir la mise en page et cliquer dessus. . . Par conséquent, lorsque la mise en page est visible, cela devrait l'être lorsque lyt n'a pas le style hide Pourquoi jugez-vous toujours
  • ?
🎜Probablement parce qu'il n'y a pas de style et que je ne comprends pas très bien à quoi servent les éléments de votre page, donc je ne comprends peut-être pas. Vous avez fermé la méthode ready. Si des problèmes persistent, vous pouvez directement poster une capture d'écran de la page. 🎜
淡淡烟草味
$("#ma").click(function(e){
        e.stopPropagation();
        $("#lyt").removeClass('hide'); //$("#lyt") 默认没有hide,怎么显示?改成$("#lyt").show();
    });
为情所困

Puisque vous utilisez jQuery pour écrire, pourquoi n'utilisez-vous pas simplement .show(),.hide(),.fadeIn(),.fadeOut()ces packages, et il n'y a aucun style attaché, donc je ne comprends pas très bien.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!