我目前正在努力提高我对jQuery的总体理解,并有一个问题,我认为这将帮助我实现这一点。我正在调查enquire.js以增强响应网站。更好地理解jquery与enquire.js
下面是一小部分详述了公司的服务(简体)HTML:
<section id="services">
<article id="services-coaching" class="closed">
<div class="image">
<?php include("library/images/service-coaching.svg"); ?>
<div class="fallback">
</div>
<div class="text">
<?php the_content(); ?>
</div>
</article>
<article id="services-workshops" class="closed">
<div class="image">
<?php include("library/images/service-workshops.svg"); ?>
<div class="fallback">
</div>
<div class="text">
<?php the_content(); ?>
</div>
</article>
<article id="services-courses" class="closed">
<div class="image">
<?php include("library/images/service-courses.svg"); ?>
<div class="fallback">
</div>
<div class="text">
<?php the_content(); ?>
</div>
</article>
</section>
的jQuery的屏幕比 47em小:
// Services - mobile
$('#services-coaching, #services-workshops, #services-courses').waypoint(function(direction) {
if (direction === 'down') {
$(this).addClass('open').removeClass('closed');
}
else {
$(this).addClass('closed').removeClass('open');
}
}, { offset: 100 });
这里我使用的航点.js通过更改类来触发SVG图像上的CSS转换 - 所有操作都是通过CSS逐步完成的。
对于大屏幕的CSS隐藏的上.closed
文本(.text
),并揭示了它在单击时article
(改变类.open
)以及触发动画。
// Services - large screen
$('#services article').click(function() {
$(this).addClass('open').removeClass('closed');
});
这是我对jQuery的理解需要改进的地方!我知道我可以使用这些jQuery的对象与enquire.js基本上匹配和UNMATCH他们根据屏幕大小,这样的事情:
jQuery(document).ready(function($) {
enquire.register("screen and (min-width: 47.0625em)", function() {
match : function() {
// enable 'waypoint' jQuery object
// disable 'click' jQuery object
},
unmatch : function() {
// disable 'waypoint' jQuery object
// enable 'click' jQuery object
}
});
});
但我不知道如何以最佳方式创建对象,使他们可以这样使用。 我开始寻找into jQuery fundamentals但它并没有帮助我:(
更新:
尝试但在不
思想.bind
/.unbind
可能工作在最初的单击事件测试这一点,但
不工作
我做错了继作品点击:
enquire.register("screen and (min-width: 47.0625em)", {
match : function() {
$('#services article').bind('click', function() {
$(this).addClass('open').removeClass('closed');
});
},
unmatch : function() {
$('#services article').unbind('click');
}
});
到达那里!