超过 50 英镑的所有英国大陆照明订单免费送货

 

给我们打电话 | 01392 877737

灯光设计

我们了解每个家庭都是不同的。从上市时期的房产到当代的新建筑;酒店项目到商业物业我们的照明设计团队积累了丰富的深厚专业经验。

创意视觉


从二维建筑师的计划中,我们的照明设计师可以感知到照明解决方案并不总是显而易见的体积、角度和不寻常的空间。使用我们的创意知识,每个空间都将充满天赋和考量,从而形成既实用又具有视觉震撼力的照明方案。

技术诀窍


成功的照明建立在与技术知识相一致的坚实经验基础之上。凭借对最新 LED 安装要求的全面了解,我们的照明设计师将与您的电工和/或控制专家一起工作,以确保提议的方案具有相关性且易于理解。

超过 20 年的经验和专业知识

产品意识


我们拥有丰富的知识,并且可以从广泛的国际制造商和设计师那里获得最新的创新和流行灯具。在设计过程的每个阶段,我们都会仔细考虑、选择和推荐最合适、最令人兴奋的照明,让您家中的每个房间都脱颖而出。

准时且按预算


通过与 Amos 的团队合作,您将受益于从许多成功项目中获得的创造性且常识性的建议。通过投资高质量的照明设计,从长远来看,您将节省时间和金钱。

保持联系

享受第一笔订单 10% 的折扣

注册以接收您家的造型创意,享受独家优惠并成为第一个了解新产品系列的人。

*店内和网上折扣。

关闭

大车

篮子里没有产品。

tag on yout theme's header.php Read the detailed step-by-step at //humbertosilva.com/visual-composer-infinite-image-carousel/ */ // auxiliary code to create triggers for the add and remove class for later use (function($){ $.each(["addClass","removeClass"],function(i,methodname){ var oldmethod = $.fn[methodname]; $.fn[methodname] = function(){ oldmethod.apply( this, arguments ); this.trigger(methodname+"change"); return this; } }); })(jQuery); // main function for the infinite loop function vc_custominfiniteloop_init(vc_cil_element_id){ var vc_element = '#' + vc_cil_element_id; // because we're using this more than once let's create a variable for it window.maxItens = jQuery(vc_element).data('per-view'); // max visible items defined window.addedItens = 0; // auxiliary counter for added itens to the end // go to slides and duplicate them to the end to fill space jQuery(vc_element).find('.vc_carousel-slideline-inner').find('.vc_item').each(function(){ // we only need to duplicate the first visible images if (window.addedItens < window.maxItens) { if (window.addedItens == 0 ) { // the fisrt added slide will need a trigger so we know it ended and make it "restart" without animation jQuery(this).clone().addClass('vc_custominfiniteloop_restart').removeClass('vc_active').appendTo(jQuery(this).parent()); } else { jQuery(this).clone().removeClass('vc_active').appendTo(jQuery(this).parent()); } window.addedItens++; } }); // add the trigger so we know when to "restart" the animation without the user knowing about it jQuery('.vc_custominfiniteloop_restart').bind('addClasschange', null, function(){ // navigate to the carousel element , I know, its ugly ... var vc_carousel = jQuery(this).parent().parent().parent().parent(); // first we temporarily change the animation speed to zero jQuery(vc_carousel).data('vc.carousel').transition_speed = 0; // make the slider go to the first slide without animation and because the fist set of images shown // are the same that are being shown now the slider is now "restarted" without that being visible jQuery(vc_carousel).data('vc.carousel').to(0); // allow the carousel to go to the first image and restore the original speed setTimeout("vc_cil_restore_transition_speed('"+jQuery(vc_carousel).prop('id')+"')",100); }); } // restore original speed setting of vc_carousel function vc_cil_restore_transition_speed(element_id){ // after inspecting the original source code the value of 600 is defined there so we put back the original here jQuery('#' + element_id).data('vc.carousel').transition_speed = 600; } // init jQuery(document).ready(function(){ // find all vc_carousel with the defined class and turn them into infine loop jQuery('.vc_custominfiniteloop').find('div[data-ride="vc_carousel"]').each(function(){ // allow time for the slider to be built on the page // because the slider is "long" we can wait a bit before adding images and events needed var vc_cil_element = jQuery(this).prop("id"); setTimeout("vc_custominfiniteloop_init('"+vc_cil_element+"')",2000); }); });