ฉันจะเปลี่ยน CSS ไม่แสดงคุณสมบัติหรือบล็อกโดยใช้ jQuery ได้อย่างไร
ฉันจะเปลี่ยน CSS ไม่แสดงคุณสมบัติหรือบล็อกโดยใช้ jQuery ได้อย่างไร
คำตอบ:
วิธีที่ถูกต้องในการทำเช่นนี้คือการใช้show
และhide
:
$('#id').hide();
$('#id').show();
วิธีอื่นคือการใช้วิธี jQuery css :
$("#id").css("display", "none");
$("#id").css("display", "block");
$(".class").css("display", "none");
$('#id').css('display', 'none');
แต่ไม่ได้ผล อย่างไรก็ตามการใช้การ$('#id').css('color', 'red');
ทำงาน ฉันไม่แน่ใจว่าทำไม ไม่มีใครมีความคิดใด ๆ ขอบคุณล่วงหน้า.
มีหลายวิธีในการทำสิ่งนี้ให้สำเร็จโดยแต่ละจุดประสงค์
1 .) ในการใช้อินไลน์ในขณะที่เพียงแค่กำหนดองค์ประกอบรายการสิ่งที่ต้องทำ
$('#ele_id').css('display', 'block').animate(....
$('#ele_id').css('display', 'none').animate(....
2 ) เพื่อใช้ในขณะตั้งค่าคุณสมบัติ CSS หลายรายการ
$('#ele_id').css({
display: 'none'
height: 100px,
width: 100px
});
$('#ele_id').css({
display: 'block'
height: 100px,
width: 100px
});
3 ) การเรียกใช้คำสั่งแบบไดนามิก
$('#ele_id').show();
$('#ele_id').hide();
4. ) เพื่อสลับระหว่างบล็อกและไม่มีถ้าเป็น div
$ ( '# ele_id') สลับ ().
หากการแสดง div เป็นบล็อกโดยค่าเริ่มต้นคุณสามารถใช้.show()
และ.hide()
เพื่อง่ายกว่าใน.toggle()
การสลับระหว่างการมองเห็น
สำหรับการซ่อน:
$("#id").css("display", "none");
สำหรับการแสดง:
$("#id").css("display", "");
วิธีอื่นในการใช้ jQuery CSS method:
$("#id").css({display: "none"});
$("#id").css({display: "block"});
วิธีง่าย ๆ :
function displayChange(){
$(content_id).click(function(){
$(elem_id).toggle();}
)}
(function($){
$.fn.displayChange = function(fn){
$this = $(this);
var state = {};
state.old = $this.css('display');
var intervalID = setInterval(function(){
if( $this.css('display') != state.old ){
state.change = $this.css('display');
fn(state);
state.old = $this.css('display');
}
}, 100);
}
$(function(){
var tag = $('#content');
tag.displayChange(function(obj){
console.log(obj);
});
})
})(jQuery);
ในกรณีที่คุณต้องการซ่อนและแสดงองค์ประกอบขึ้นอยู่กับว่าสามารถมองเห็นได้หรือไม่คุณสามารถใช้สลับแทน.hide()
และ.show()
$('elem').toggle();
.hide () ไม่ทำงานใน Chrome สำหรับฉัน
วิธีนี้ใช้สำหรับการซ่อน:
var pctDOM = jQuery("#vr-preview-progress-content")[0];
pctDOM.hidden = true;
ในกรณีของฉันฉันกำลังแสดงองค์ประกอบ / ซ่อนของฟอร์มตามว่าองค์ประกอบอินพุตว่างเปล่าหรือไม่ดังนั้นเมื่อซ่อนองค์ประกอบองค์ประกอบต่อไปนี้องค์ประกอบที่ซ่อนอยู่ถูกจัดตำแหน่งใหม่โดยใช้พื้นที่ของมันจำเป็นต้องลอย: ซ้าย ขององค์ประกอบขององค์ประกอบดังกล่าว แม้กระทั่งการใช้ปลั๊กอินตาม แต่ขึ้นอยู่กับมันก็จำเป็นต้องใช้ลอย
ใช้สิ่งนี้:
$("#id").(":display").val("block");
หรือ:
$("#id").(":display").val("none");
<style> #choosepath { display: none; } </style> <script> $(document).ready(function () { $('#btn_journey').click(function () { alert("button click"); $('#choosepath').css({"display":"normal"}); }); }); </script> </head> <body> <a href="#" class="btn btn-primary btn-lg" id="btn_journey">Start your journey</a> <div class="col-lg-3 col-md-6 mb-4" id="choosepath"> </div> </body></html>
ใช้:
$(#id/.class).show()
$(#id/.class).hide()
อันนี้เป็นวิธีที่ดีที่สุด
#id
ใช้สำหรับรหัสสิ่งที่เกี่ยวกับถ้าผมต้องการที่จะใช้class
?