0

我正在使用苏格兰面板制作一个画布菜单。我想仅在移动设备上将面板的宽度从 70% 更改为 100%。这是我正在使用的代码:

jQuery(document).ready(function($){

var panelExample = $('#sidecart').scotchPanel({
    containerSelector: 'body',
    direction: 'left',
    duration: 300,
    transition: 'ease',
    clickSelector: '.toggle-sidecart',
    distanceX: '70%', // this sets the width
    enableEscapeKey: true
});

});

我想我可以使用下面的代码,但我不知道如何

if (screen.width >= 768) {
    // make width of panel 100%
}

谁能帮我吗?

谢谢!

4

1 回答 1

0

当您初始化 panelExample 变量时,您可以执行任何您想要的逻辑。

jQuery(document).ready(function($){

var panelExample = (screen.width >= 768) ?

  $('#sidecart').scotchPanel({
      containerSelector: 'body',
      direction: 'left',
      duration: 300,
      transition: 'ease',
      clickSelector: '.toggle-sidecart',
      distanceX: '100%', // this sets the width
      enableEscapeKey: true
  }) :

  $('#sidecart').scotchPanel({
      containerSelector: 'body',
      direction: 'left',
      duration: 300,
      transition: 'ease',
      clickSelector: '.toggle-sidecart',
      distanceX: '70%', // this sets the width
      enableEscapeKey: true
  });
});

如果您要设置许多不同的对象选项,那么上面的示例是有意义的。在您的问题中,唯一改变的是距离X,因此使变量声明更严格可能更具可读性:

jQuery(document).ready(function($){

var panelWidth = (screen.width >= 768) ? "100%" : "70%",
    panelExample = $('#sidecart').scotchPanel({
      containerSelector: 'body',
      direction: 'left',
      duration: 300,
      transition: 'ease',
      clickSelector: '.toggle-sidecart',
      distanceX: panelWidth, // this sets the width
      enableEscapeKey: true
  });

});
于 2017-08-02T20:12:46.923 回答