我使用此代码关闭div按一下:
;(function ($) {
$(function () {
$('.m-help .m-text').hide();
$('.m-help')
.on('click', function (event) {
var close = $(event.target).closest('.m-link-close-button').length;
$(this).find('.m-text')[close ? 'hide' : 'show']();
});
});
$(document).bind('m-ajax-after', function (e, selectors) {
$('.m-help .m-text').hide();
$('.m-help')
.on('click', function (event) {
var close = $(event.target).closest('.m-link-close-button').length;
$(this).find('.m-text')[close ? 'hide' : 'show']();
});
});
})(jQuery);
使用这个HTML:
<div class="m-help">
<div class="m-text" style="width: 40px;">
<?php echo $_helpHtml ?>
<a href="#" class="m-link-close-button"><span>x</span></a>
</div>
<a href="#" onclick="return false;" class="details m-link"></a>
</div>
这很好,但是当页面加载时,首先显示div,加载整个页面之后div就关闭了。
为什么这个加载首先打开,然后整个页面加载关闭?
如何编辑这段代码,即在加载页面时直接关闭div?
发布于 2015-05-11 07:01:32
直接在div上使用css显示。你的代码应该是这样
<div class="m-text" style="width: 40px; display:none">
<?php echo $_helpHtml ?>
<a href="#" class="m-link-close-button"><span>x</span></a>
</div>
发布于 2015-05-11 06:57:25
一旦文档准备就绪,JavaScript就会在页面上执行加载,所以如果您依赖JS来隐藏它,这在那之前是不会发生的。
如果这是一个问题,使用CSS隐藏您的div元素,然后在需要时用JavaScript显示它。
发布于 2015-05-11 07:02:19
默认情况下,使用css隐藏div。
.m-help .m-text{
display:none;
}.
当您需要显示div时,使用.addClass
将其命名为divShow添加另一个类。
.divShow{
display:block !important;
}
并在需要关闭div时删除该类。
https://stackoverflow.com/questions/30161291
复制相似问题