【问题标题】:Viewing fixed header on mobile device在移动设备上查看固定标题
【发布时间】:2013-12-06 07:53:32
【问题描述】:

您好,我的网站有一个固定的水平导航栏,当我放大时在移动设备上滚动它时遇到问题。我进行了研究,解决此问题的唯一方法是使用 javascript。

我找到了一个 jquery 解决方案(如下),但我很难将它变成一个角度指令。有什么帮助吗?谢谢

我正在尝试将其转换为角度指令的 jquery

if ($(window).width() < 990) {
$('#copyright').css({ 'left': (20 - $(window).scrollLeft()) + 'px' });
$('#click-to-call, #erving').css({ 'right': (20 + $(window).scrollLeft()) + 'px'});
 }
 $(window).scroll(function() {
if ($(window).width() < 990) {
$('#copyright').css({ 'left': (20 - $(window).scrollLeft()) + 'px' });
$('#click-to-call, #erving').css({ 'right': (20 + $(window).scrollLeft()) + 'px'});
}
else {
$('#copyright').css({ 'left': '20px' });
$('#click-to-call, #erving').css({ 'right': '20px' });
}
  });

【问题讨论】:

    标签: javascript css angularjs angularjs-directive angularjs-scope


    【解决方案1】:

    类似这样的:

    angular.module('myapp')
    .directive('fixedBar', function ($window) {
      return {
        restrict: 'A',
        link: function (scope, element) {
          $win = angular.element($window);
          // Assuming these elements are static
          $lefties = element.find('#copyright');
          $righties = element.find('#click-to-call, #erving');
    
          function updateBar() {
            if ($win.width() < 990) {
              $lefties.css({ 'left': (20 - $win.scrollLeft()) + 'px' });
              $righties.css({ 'right': (20 + $win.scrollLeft()) + 'px'});
            } else {
              $lefties.css({ 'left': '20px' });
              $righties.css({ 'right': '20px' });
            }
          }
    
          $win.on('scroll', updateBar);
    
          updateBar();
        }
      }
    }
    

    允许你这样做:

    <nav fixed-bar>
      <div id="copyright"></div>
      <div id="click-to-call"></div>
      <div id="erving"></div>
    </nav>
    

    【讨论】:

    • 我在函数 updateBar() 下放了一个 alert('test'),然后我最小化浏览器的大小,然后开始滚动。然而它不运行?我这样做时不应该运行 $win.on('scroll', updateBar) 吗?
    • 是的,这应该发生。它最终对你有用吗?正如绿色勾号表明它解决了您的问题。
    • 其实没有
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-19
    • 1970-01-01
    • 2018-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多