【问题标题】:Creating a marquee using anything? Javascript, Jquery, CSS使用任何东西创建选框? Javascript,jQuery,CSS
【发布时间】:2017-12-19 13:26:59
【问题描述】:

我正在尝试使用 HTML 和 CSS 构建博客。现在我已经使用 PHP 和使用我创建的多个小部件的数据为某些股票集成了 API。

现在我正在尝试创建一个类似于股票市场的选取框(无穷无尽,没有任何间隙)。我找到了一些例子,但未能理解它的实现。

谁能说出字幕功能在这些网站中的工作原理

  1. https://nse.com/(在网站顶部)
  2. https://www.gdax.com/

$('document').ready(function(){
    refreshData();
})

function refreshData() {
    $('#container-table').load("data.php", function(){
        setTimeout(refreshData, 10000);
    });

    $('#container-tablel').load("datanike.php", function(){
        setTimeout(refreshData, 10000);
    });

    $('#container-tabled').load("datamsft.php", function(){
        setTimeout(refreshData, 10000);
    });

    $('#container-tablee').load("dataaapple.php", function(){
        setTimeout(refreshData, 10000);
    });

    $('#container-tablex').load("dataamzn.php", function(){
        setTimeout(refreshData, 10000);
    });
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container1">
    <div id="container-table"></div>
    <div id="container-tablel"></div>
    <div id="container-tabled"></div>
    <div id="container-tablee"></div>
    <div id="container-tablex"></div>
</div>

我想像在 GDAX 中那样实现这些。但任何其他实现也将不胜感激。

提前致谢。

【问题讨论】:

标签: javascript php jquery html css


【解决方案1】:

NSE 站点正在使用custom-stock-ticker(一个 Word Press 插件)。一个很好的起点是查看stock_ticker_script.js

【讨论】:

    【解决方案2】:

    您可以使用简单的html ma​​rquee>标签进行无限移动。

    查看示例:

    #container-table, #container-tablel, #container-tabled, #container-tablee, #container-tablex {
        float: left;
        padding: 0 20px 0 0;
    }
    <div class="container1">
      <marquee>
          <div id="container-table">test</div>
          <div id="container-tablel">test1</div>
          <div id="container-tabled">test2</div>
          <div id="container-tablee">test3</div>
          <div id="container-tablex">test4</div>
      </marquee>
    </div>

    【讨论】:

    • :“此功能已过时。虽然它可能在某些浏览器中仍然有效,但不鼓励使用它,因为它可能随时被删除。尽量避免使用它。”
    【解决方案3】:

    试试这个

    这是连续的选框

    // polyfill
    window.requestAnimationFrame = (function(){
      return  window.requestAnimationFrame       ||
              window.webkitRequestAnimationFrame ||
              window.mozRequestAnimationFrame    ||
              function( callback ){
                window.setTimeout(callback, 1000 / 60);
              };
    })();
    
    var speed = 5000;
    (function currencySlide(){
        var currencyPairWidth = $('.slideItem:first-child').outerWidth();
        $(".slideContainer").animate({marginLeft:-currencyPairWidth},speed, 'linear', function(){
                    $(this).css({marginLeft:0}).find("li:last").after($(this).find("li:first"));
            });
            requestAnimationFrame(currencySlide);
    })();
    .slider{
        width:100%;
        overflow:hidden;
        position:relative;
        margin:0;
    }
    .edge{
        left:0;
        right:0;
        top:0;
        bottom:0;
        position:absolute;
        height:100%;
        display:block;
    }
    .edge:before{
        content:'';
        position:absolute;
        left:0;
        background:-webkit-linear-gradient(left, white 10%, rgba(0,0,0,0) 100%);
        width:25%;
        height:100%;
    }
    .edge:after{
        content:'';
        position:absolute;
        right:0;
        background:-webkit-linear-gradient(right, white 10%, rgba(0,0,0,0) 100%);
        width:25%;
        height:100%;
    }
    ul{
        background:#ddd;
        overflow:hidden;
        width:1000%;
        margin:0;
    }
    li{
        list-style:none;
        display:inline-block;
        padding:0 50px;
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class='slider'>
        <div class="edge"></div>
    <ul class="slideContainer" id="money_start">
            <li class="slideItem" >
                    EUR
            </li>
            <li class="slideItem">
                    USD
            </li>
            <li class="slideItem">
                    JPY
            </li>
            <li class="slideItem">
                    CNY
            </li>
            <li class="slideItem">
                    VD
            </li>
            <li class="slideItem">
                    GBP
            </li>
            <li class="slideItem">
                    AUD
            </li>
            <li class="slideItem">
                    CAD
            </li>
            <li class="slideItem">
                    CHF
            </li>
            <li class="slideItem">
                    XAU
            </li>
    </ul>
    </div>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-15
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多