jQuery隐藏附加的div项

时间:2016-08-29 10:25:01

标签: javascript jquery

我有以下代码,我试图隐藏/只显示内部/附加项,例如text1,text2和text3:

HTML:

<div id="div1">
    <a href="#" id="clickItem">LINK</a>
    <br />
    text1
    <br />
    text2
    <br />
    text3
</div>

jQuery的:

var hide = false;
$("#clickItem").click(function (e) {
    if (hide == false) {
        $("#div1").hide();
        hide = true;
        return;
    }
        else {
            $("#div1").show();
            hide = false;
            return;
        }
});

5 个答案:

答案 0 :(得分:2)

您可以将内部文本包装在div中并切换链接的内部div。请查看下面的代码片段了解更多信息。

&#13;
&#13;
var hide = false;
$("#clickItem").click(function (e) {
  $("#innerPart").toggle();
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div1">
  <a href="#" id="clickItem">LINK</a>
  <div id="innerPart">
    <br />
    text1
    <br />
    text2
    <br />
    text3
  </div>                    
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

1)你可以在“a”标签下面的div里面添加新的div,并在id的内部部分上应用代码。

2)或使用“.children()”并将1st留作“a”标签。

答案 2 :(得分:0)

HTML文档中文本节点内的private class PdfGenerationTask extends AsyncTask<Void, Void, String> { int width, height; Canvas canvas; PdfGenerationTask(int width, int height, Canvas canvas) { this.width = width; this.height = height; this.canvas = canvas; } @Override protected String doInBackground(Void... params) { PdfDocument document = new PdfDocument(); // repaint the user's text into the page View content = findViewById(R.id.pdf_content); // crate a page description int pageNumber = 1; PageInfo pageInfo = new PageInfo.Builder(width, height - 20, pageNumber).create(); // create a new page from the PageInfo Page page = document.startPage(pageInfo); content.draw(canvas); // do final processing of the page document.finishPage(page); SimpleDateFormat sdf = new SimpleDateFormat("ddMMyyyyhhmmss"); String pdfName = "pdfdemo" + sdf.format(Calendar.getInstance().getTime()) + ".pdf"; File outputFile = new File("/sdcard/PDFDemo_AndroidSRC/", pdfName); try { outputFile.createNewFile(); OutputStream out = new FileOutputStream(outputFile); document.writeTo(out); document.close(); out.close(); } catch (IOException e) { e.printStackTrace(); } return outputFile.getPath(); } 文本片段是不可能的。 jQuery&#39; hidehide最终使用HTML元素的CSS样式show。所以你需要一个包装HTML元素,displayspan来应用jQuery&#39; divshow

答案 3 :(得分:0)

    <div id="idDiv">
  <a href="#" id="clickItem" onClick="toggleFunction()">LINK</a>
  <div id="idText">
    <br /> text1
    <br /> text2
    <br /> text3
  </div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">
</script>

我们可以使用onclick属性来调用函数。

      function toggleFunction() {
    $("#idText").toggle();
    alert("ok");
  }

答案 4 :(得分:0)

将所有文字项目放入span标记,并使用toggle功能切换文字项可见性:

$("#clickItem").on('click', function(){ 
   $(".innerText", $(this).parent()).toggle(); 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div1">
    <a href="#" id="clickItem">LINK</a>
    <br />
    <span class='innerText'>text1
    <br />
    text2
    <br />
    text3</span>
</div>