当隐藏div显示时,Signature_pad不起作用

时间:2016-02-13 21:40:25

标签: javascript html type-signature

我试图实现这个签名板https://github.com/szimek/signature_pad,当我尝试在单个页面中它工作正常,但问题出现在我试图放入一个div,这是在开始时隐藏,然后垫不起作用。我认为调整大小是一个画布问题,但我不知道如何解决它。

这是我的代码:

<div class="col-sm-9 col-md-10 message-list">
  This is the first div, which I hidde when click on a row
</div>
<div class="col-sm-9 col-md-10 view-message" style="display:none" >
 <div id="signature-pad" class="m-signature-pad">
    <div class="m-signature-pad--body">
       <canvas></canvas>
    </div>
    <div class="m-signature-pad--footer">
       <div class="description">Sign above</div>
          <button type="button" class="button clear sign_btn" data-action="clear">Clear</button>
          <button type="button" class="button save sign_btn" data-action="save">Save</button>
    </div>
</div>

这是js部分:

$(document).ready(function() {
$(".list-group-item").each(function() {
    $(this).click(function() {
            $(".message-list").fadeOut('slow').css('display','none');
            $(".view-message").fadeIn('slow').css('display','block');
    });
});

我加载了所有必需的js和css,它在主视图中工作,但是当我通过一个按钮并将div更改为阻止时。我试着阅读文档,但不是很清楚。

3 个答案:

答案 0 :(得分:4)

使用:height: 0; overflow: hidden; 而不是:display:none

它对我有用。

答案 1 :(得分:0)

您可以尝试设置隐藏隐藏而不是display:none吗?

$(".list-group-item").each(function() {
    $(this).click(function() {
            $(".message-list").fadeOut('slow').css('visibility','hidden');
            $(".view-message").fadeIn('slow').css('visibility','visible');
    });
});

答案 2 :(得分:0)

CSS 操作对我不起作用。在用户准备签名之前,我没有渲染签名板,而不是使用 CSS。 IE。用监听某个事件的条件包装签名板组件。