1

Polymer Starter Kit をダウンロードして、そのような紙要素をアニメーション化しようとしています

        <section data-route="contact">
          <button on-click="_onButtonClick">Toggle</button>
          <my-dialog>
            <paper-material elevation="1">
              <h2 class="page-title">Contact</h2>
              <p>This is the contact section</p> 
            </paper-material>
          </my-dialog>
        </section>

次のように my-dialog.html:

<dom-module id="my-dialog">

  <template>

    <content></content>

  </template>
</dom-module>

<script>

Polymer({

is: 'my-dialog',

behaviors: [
  Polymer.NeonAnimationRunnerBehavior
],

properties: {

  opened: {
    type: Boolean
  },

  animationConfig: {
    type: Object,
    value: function() {
      return {
        'entry': [{
          name: 'slide-left-animation',
          node: this
        }],
        'exit': [{
          name: 'fade-out-animation',
          node: this
        }]
      }
    }
  }

},

listeners: {
  'neon-animation-finish': '_onAnimationFinish'
},

_onAnimationFinish: function() {
  if (!this.opened) {
    this.style.display = '';
  }
},

show: function() {
  this.opened = true;
  this.style.display = 'inline-block';
  this.playAnimation('entry');
},

hide: function() {
  this.opened = false;
  this.playAnimation('exit');
}

  });

</script>

私が直面している問題は、アニメーションを切り替えた後、紙の要素が押しつぶされて画面に表示されたままになることです。アニメーション後に表示されないようにするにはどうすればよいですか? ハードコーディングを試みまし<paper-material hidden?=true>たが、要素も非表示になりません。

4

1 に答える 1

1

コメントしたように、単に変更する必要がありますthis.style.display = 'none';

于 2016-01-15T14:34:55.977 に答える