这里我提出了我的问题的简化版本。在我的情况下,jQuery(3.2.1)slideToggle()函数根本不会向上或向下滑动。但是,控制台会在点击事件中打印slideToggle()函数上方的行,表示触发了点击事件。该函数位于Polymer元素类中。
的console.log( '触发');
会打印到控制台。
代码:
<link rel="import" href="../../bower_components/polymer/polymer-element.html">
<dom-module id="cm-body">
<template>
<div id="container">
<div on-click="performSlideToggle" >test</div>
<p>blabla test</p>
</div>
</template>
<script>
/**
* @customElement
* @polymer
*/
class CmBody extends Polymer.Element {
static get is() { return 'cm-body'; }
performSlideToggle() {
console.log('triggered');
$('p').slideToggle();
}
}
window.customElements.define(CmBody.is, CmBody);
</script>
</dom-module>
感谢您的帮助!
答案 0 :(得分:1)
<link rel="import" href="../../bower_components/polymer/polymer-element.html">
<dom-module id="cm-body">
<template>
<div id="container">
<div on-click="performSlideToggle" >test</div>
<p id="slide_able">blabla test</p>
</div>
</template>
<script>
/**
* @customElement
* @polymer
*/
class CmBody extends Polymer.Element {
static get is() { return 'cm-body'; }
performSlideToggle() {
console.log('triggered');
$(this.$.slide_able).slideToggle();
}
}
window.customElements.define(CmBody.is, CmBody);
</script>
</dom-module>
&#13;