小编Meu*_*les的帖子

三通饼干

我正在用3个按钮构建弹出窗口!每个按钮需要设置一个cookie,但具有不同的到期时间/日期.我正在使用jquery.cookie这个!

  • 1个按钮更像是一个会话cookie.因此,当单击此按钮时,弹出窗口需要消失并在我启动新的浏览器屏幕时再次显示.所以,当我在同一个浏览器窗口和同一个网站上打开一个页面时.

  • 1个按钮用于"不再显示弹出窗口",将cookie设置为7天

  • 在AJAX succes函数中设置了1个cookie,设置为365天

我无法正确设置不同的到期时间.因此,例如当我单击带有会话cookie的按钮时,当我在网站内打开新页面时,弹出窗口再次显示.

我看不出我做错了什么!我没有得到任何控制台错误,但cookie不会正确设置.

我有的是这个:

 $(document).ready(function(){


    var my_cookie = $.cookie('regNewsletter');

    if (!my_cookie) {
      setTimeout(function(){
        $('#newsletter').modal('show');
      }, 1000);
    }
    $(".close--btn").on("click", function () {
      $.cookie('regNewsletter', true, {
        path: '/',
        domain: ''
      });
    });
    $(".dismiss--btn").on("click", function () {
      $.cookie('regNewsletter', true, {
        path: '/',
        domain: '',
        expires: 7
      });
    });
    console.log(my_cookie);

 // code for removing cookie when session ends //
 window.onbeforeunload = function() {
    $.removeCookie('regNewsletter', { path: '/', domain: '' });
 };


 $("#newsletter .btn").click(function(e){
      e.preventDefault();

       $.ajax({
       ... 

        success: function(txt, …
Run Code Online (Sandbox Code Playgroud)

javascript cookies jquery

10
推荐指数
1
解决办法
346
查看次数

在Twig中将变量转换为字符串

我在Twig中翻译字符串时遇到了麻烦.我正在为多语种网店建立一个主题.

用户可以创建USP(唯一销售点).问题是当你有不同的语言时它不会翻译.

所以在模板中就像这样调用usp {{ theme.usp }} .结果就是"免费送货".

要翻译系统中的字符串,您必须使用{{ 'Free shipping' | t }}过滤器.

有没有办法{{ theme.usp }}翻译.我认为这会很有用,但我不知道如何将其合并.如何在twig中连接字符串

我做的是:

{% set usp = {{ theme.usp }} %}
{{ usp | t }}
Run Code Online (Sandbox Code Playgroud)

这样做会给我一个错误,因为{{ theme.usp }}它必须介于两者之间''.这样做并没有给我带来'Free shipping'结果,但是'theme.usp'.

有人建议吗?

symfony twig

8
推荐指数
2
解决办法
3万
查看次数

Bootstrap隐藏为肖像,但显示为景观

假设我有一个带有3个li元素的ul.如何在纵向模式下隐藏最后两个li元素,并在横向模式下显示全部3个元素?使用CSS offcourse和Bootstrap 3.

<div class="header-box pull-left">
  <ul>
   <li class="usp">
     <a href="link" title="usp">
       <span class="usp-text">usp</span>
     </a>
   </li>
   <li class="usp hide-for-xs">
     <a href="link" title="usp">
       <span class="usp-text">usp</span>
     </a>
   </li>
   <li class="usp hide-for-xs">
     <a href="link" title="usp">
       <span class="usp-text">usp</span>
     </a>
   </li>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

我想过做的事情:

.show-for-landscape{
display:block!important;
}
Run Code Online (Sandbox Code Playgroud)

但这如何与媒体查询一起使用?什么是屏幕尺寸的好设置等?

任何建议更受欢迎

html css media-queries responsive-design twitter-bootstrap

5
推荐指数
1
解决办法
4284
查看次数

如果一个是真的而另一个是假的,那就是树枝

关于这个问题.

当a == true和b == false时你怎么办?这必须是在投票之前相信与否,但没有什么可以找到的.

所以:

{% if a == true and b == false %}
do stuff
{% endif %}
Run Code Online (Sandbox Code Playgroud)

你应该说这应该有效,但事实并非如此:

{% if (a == true) and (b == false) %}
do stuff
{% endif %}
Run Code Online (Sandbox Code Playgroud)

UPDATE2这有效,因为一个是真的,两个是假的

{% if variant.stock.track == true %} 
{% if variant.stock.on_stock == false %}
  ({{ 'Out of stock' | t }}){% else %} ({{ 'In stock' | t }})
{% endif %}
{% endif %}
Run Code Online (Sandbox Code Playgroud)

twig

5
推荐指数
1
解决办法
2万
查看次数

加载内容后显示引导模式

我正在使用 Bootstrap 3 模式,其中我从 getJson 函数加载一些数据。由于模态内的数据加载速度不一样,我想显示加载图像/文本。加载所有数据后,显示/打开模态。我发现这个线程非常有用,但我不知道如何将它放在我的代码中。有人可以帮我吗?

我的功能

function myfunction(url){
  $('.products-loader').show(); //show the loading image and then??

  $.getJSON(url, function (data){

    var product = data.product;
    var image = 'http://www.webshop.com/i/' + image_id_convert(product.image) + '/380x380x2/image.jpg';

    $('.wqs-title').html('<a href="'+ product.url + '">' + product.title + '</a>');
    $('.wqs-description').html(product.description);
    $('.wqs-images').html('<img src="' + image + '"/>');

    //etc....


  });   
}
Run Code Online (Sandbox Code Playgroud)

jquery bootstrap-modal

5
推荐指数
1
解决办法
4112
查看次数

滚动以锚定并固定导航

我正在尝试在滚动到锚点时使锚点链接固定的导航。使事物固定在锚点上不是问题。

问题是我的导航几乎位于屏幕底部。因此,如果您向下滚动导航键会发生什么情况fixed。然后,单击锚链接时,脚本将滚动到很远的锚块。我试图将导航偏移到导航的高度。这有效,但仅当您再次单击同一链接时才有效。第一次单击锚链接仍然会使链接滚动太远!

我创建了一个小提琴来解释会发生什么-> 小提琴

我个人认为,scrollTo和同时固定nav是相互干扰的。

有人知道会导致什么吗?

我所拥有的是:

<div class="anchor-links">
    <div class="anchor-wrapper">
        <ul class="nav-list">
            <li><a href="#description" class="goSmoothly">Product information</a></li>
            <li><a href="#bundles" class="goSmoothly">Product bundles</a></li>
            <li><a href="#reviews" class="goSmoothly">Reviews</a></li>
            <li><a href="#related" class="goSmoothly">Related products</a></li>
        </ul>
    </div>
</div>

<div id="description" class="block">description</div>
<div id="bundles" class="block">bundles</div>
<div id="reviews" class="block">reviews</div>
<div id="related" class="block">related</div>

var fixmeTop = $('.anchor-links').offset().top;

$(window).scroll(function() {
    var currentScroll = $(window).scrollTop();
    if (currentScroll >= fixmeTop){
        $('.anchor-links').addClass("sticky");
    } else {
        $('.anchor-links').removeClass("sticky");
    }
});

$('.goSmoothly').click(function(event){     
    event.preventDefault();
    $(this).addClass('active');
    $('html,body').animate({
        scrollTop: $(this.hash).offset().top - 100
    }, 500);
});
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

5
推荐指数
1
解决办法
1141
查看次数

Twig 检查值是否在数组中

我无法使用 Twig 检查数组中是否存在值。如果购物车中有某种产品,我想在结账时隐藏运输方式。 我只能使用Twig代码,所以我必须在其中找到逻辑。

假设当产品 ID 1234 在购物车中时我想隐藏#certain_div

所以我所拥有的是这个->

  {% if checkout %}

      {% set array = theme.sku_shipping_rule | split(',') %}
     // theme.sku_shipping_rule = a text string like 1234, 4321, 5478         

        {% if checkout.products %}
         {% for product in checkout.products %}
          {% if product.sku in array %}

           <style>
             #certain_div {
                display: none;
              }
           </style>

          {% endif %}
         {% endfor %}
       {% endif %}

    {% endif %}
Run Code Online (Sandbox Code Playgroud)

我面临的问题是我的代码似乎总是返回 true。因此,即使 与product.sku数组中的值不匹配,它仍然会隐藏#certain_div。我已经通过放置{{ product.sku }}在之前进行了测试 …

arrays saas symfony twig

5
推荐指数
1
解决办法
1万
查看次数

树枝日期格式

我正在尝试格式化日期并将每个项目(月,日和年)放在div或span中.我正在使用SaaS平台提供如下日期:

2015-03-07 22:54:00
Run Code Online (Sandbox Code Playgroud)

我尝试做的是将此日期格式化为3个单独的项目,并将它们放在div中,如下所示:

<span class="day">07</span>
<span class="month">March</span>
<span class="year">2015</span>
Run Code Online (Sandbox Code Playgroud)

因此,我需要删除一切后面的所有内容-并在div中调用它,如下所示:

<span class="day">{{ article.date | split('-')[2] }}</span>
<span class="month">{{ article.date | split('-')[1] }}</span>
<span class="year">{{ article.date | split('-')[0] }}</span>
Run Code Online (Sandbox Code Playgroud)

这给了我一个输出:

<span class="day">07 22:54:00</span>
<span class="month">03</span>
<span class="year">2015</span>
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是在一天之后删除时间并将月份更改为文本表示.

我知道它可以用PHP日期函数完成,但我不能让它工作.我面临的问题是每个日期之后需要剥离日期-.

有没有人可以帮我这个?

date symfony twig

4
推荐指数
1
解决办法
1万
查看次数

在动态元素上应用渐变或纯色

我正在尝试使用jquery将渐变或纯色应用于元素.为什么用jQuery?因为这个站点有几种不同的颜色组合,所以生成css类太多了.

假设我有一个从JSON调用生成的列表

<div class="colours">
 <ul>
  <li class="black white"></li>
  <li class="green"></li>
 </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

如您所见,我需要一个带有渐变(黑/白)和一个实心(绿色)元素的列表元素.

所以我的问题是如何在列表类中包含两种颜色时设置渐变,或者在只需要一种颜色时设置纯​​色?

使用下面的代码,它总是给我"productHtml不是一个函数"或[object object]当我尝试应用颜色时.

$.each(data.product.custom, function(i, custom) {

        var productsHtml = [];
        $.each(custom.values, function(index, value){
          var color = (value.title).toLowerCase();

          var colorClean = color.replace(/\s?\/\s?/," ");
          var colors = colorClean.split(/\s+/);
          if (colors.length===1) {
            colors[1] = colors[0];
          }

       // var productHtml = '' +
       //        '<li class="'+colorClean+'" ></li>';

         var productHtml = $('<li></li>').css({ 
            'background': '-moz-linear-gradient(-45deg,  + colors[0] + 0%, + colors[0] + 49%, + colors[1] + 49%, + colors[1] + …
Run Code Online (Sandbox Code Playgroud)

javascript css jquery css3

4
推荐指数
1
解决办法
688
查看次数

Twig 批处理和循环索引

我有一个 Twig for 循环,使用批处理过滤器将每 2 个元素包装在容器 div 中。我想在这个 for 循环中为每个第三个和第四个 div 添加一个类名。loop.index但使用过滤器时似乎无法使用batch。那是对的吗?那么使用批量过滤器时如何访问索引呢?

我尝试的是这样的:

 {% for batch in blog.articles | limit(6) | batch(2) %}
    <div class="blog-art-wrap row-eq-height">
    {% for article in batch %}
      <div class="article {% if loop.index == 3 or loop.index == 4 %}some-class{% endif %}">...... </div>
    {% endfor %}
  </div>
 {% endfor %}
Run Code Online (Sandbox Code Playgroud)

我也尝试过loop.index3等等...但它似乎忽略了这一点。还是因为批次是2个?那么实际上没有索引 3 和 4 吗?如果是这样,那么您如何访问每第二批?

symfony twig

3
推荐指数
1
解决办法
5028
查看次数

Twig 将多个事物合并到一个数组中

我正在尝试为订单系统创建一个包含日期的数组。这些日期对应于商店无法交付的天数。

我在创建该数组时遇到了麻烦,因为值是字符串,并且merge过滤器不断产生错误。 我只能访问商店的前端,所以我无法创建自定义功能。

最终结果需要是一个包含所有日期的数组,以便我可以将其用作 javascript 数组,如下所示:

var closed = [
  {{ closedDates }} // ["01-01-2018", "02-01-2018", etc...]      
];
Run Code Online (Sandbox Code Playgroud)

所以我所拥有的是:

1) 网上商店填写他们关闭的单个天数,也许是一系列天数。这是三个变量,如:

 {{ closedDays }} {# produces eg 01-01-2018, 02-01-2018, 03-01-2018 { it's dd-mm-yy #} 
 {{ date_range_start }} {# produces eg. 10-01-2018 #}
 {{ date_range_end }} {# produces eg. 20-01-2018 #}
Run Code Online (Sandbox Code Playgroud)

2)所以我所做的是:

 {% set closedDates = [] %}    


  {% if theme.closedDays %}
    {% set foo = theme.closedDays %}
    {% for i in foo | slice(0, 5) %}
       {% set …
Run Code Online (Sandbox Code Playgroud)

arrays symfony twig

2
推荐指数
1
解决办法
1万
查看次数