8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

授予某人访问 API 的权限是否会影响系统的性能?

Maers 2月前

157 0

我在列的子元素(位于 .row 元素内)内使用了 .sticky-top bootstrap 类。这样,.col 类元素就比其子元素高,理论上应该...

在元素内部的列子元素中 .sticky-top 使用 .row 。这样, .col 类元素比其子元素高,理论上应该允许子元素使用 position: sticky; 。但是,无论我怎么尝试,该部分都不会像预期的那样粘在顶部。

这是 Codepen .

我打算将右侧的字母部分设为粘贴部分。

该类 .sticky-top 在 codepen 中可以运行。但是,在我的项目中仍然无法运行。不确定如何重现错误以在此处显示它。查看我对 Tom 的回答的评论以了解更多信息。

帖子版权声明 1、本帖标题:授予某人访问 API 的权限是否会影响系统的性能?
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Maers在本站《performance》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 我有一个包含两个部分的框。上面的部分是标题,下面的部分包含一个包含文本的 div 或 p 元素。当框的宽度发生变化时,文本会换行,因此框的高度

    我有一个带有两个部分的盒子。

    • 上面是标题,下面是包含 div p 元素。当框的宽度改变时,文本会换行,因此当长标题换行时,滚动条的高度会发生变化。
    • 但我希望滚动条和文本框保持不变。如果您看一下所附图片,也许您会理解我的问题。如果标题被换行,我希望文本框看起来像屏幕截图 2 中那样。

    我使用 HTML、Bootstrap 和 Javascript。

    屏幕截图 1

    屏幕截图 2

    我希望你可以帮助我 :)

    到目前为止我有这个代码:

    .test-test {
        padding: 15px;
        max-height: 150px;
        overflow-y: scroll;
        border: 1px solid #ccc;
    }
    
    .test-test .test-description {
        opacity: 0.5;
        transition: all 1s ease-in-out;
        font-size: 25px;
        height: 100%;
        color: var(--primary-color);
    }
    
    .test-description:hover {
        opacity: 1;
        transition: all 1s ease-in-out;
        font-size: 25px;
        height: 100%;
        color: var(--primary-color);
    }
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
    <div class="container-fluid">
                            <div class="test-project-wrapper d-flex flex-row">
       <div class="">
          <img class="test-project-image" src="pictures/SB_Logo.JPG" alt="test-image">
       </div>
       <div class="container-fluid flex-column">
          <div class="test-description-heading d-flex align-items-center justify-content-center">loooooooooooong-title</div>
    
           <div class="test-test">
              <p class="test-description">
                 lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum
              </p>
           </div>
        </div>
     </div>
    </div>

    max-height 认为这与 .test-test

  • 从 Bootstrap V4 升级到 V5 后,以下动态选项卡选择代码停止工作。var v_screen = 3;var triggerMap = { 2: '#open-tab', 3: '#closed-tab', 4: '#

    从 Bootstrap V4 升级到 V5 后,以下动态选项卡选择代码停止工作。

    var v_screen = 3;
    var triggerMap = {
            2: '#open-tab',
            3: '#closed-tab',
            4: '#support-tab',
            5: '#other-tab'
        };
        $(triggerMap[v_screen]).trigger('click');
    
  • 按照 https://github.com/twbs/bootstrap/issues/34767 使用以下代码

    bootstrap.Tab.getOrCreateInstance($(triggerMap[v_screen])).show();
    

    代替

    $(triggerMap[v_screen]).trigger('click');
    
  • 我有一个 html 页面,使用 bootstrap 5.3 进行布局(例如按钮),使用 fontawesome 6.4 进行图标设计。bootstrap 和 fontawesome 均通过 CDN 包含。我想转换到最新的 google

    我有一个 html 页面,用于 bootstrap 5.3 布局(例如按钮)和 fontawesome 6.4 图标。 bootstrap 和 fontawesome 都通过 CDN 包含。

    我想 google material icons 在保留 bootstrap 的同时过渡到最新字体。我做了一个实验,同时使用图标和文本,发现 google 材质图标和其他图标之间错位。我尝试比较和复制所有差异,但无济于事。我可以通过将所有内容包装在 div 带有样式的 with display:flex; align-items:center 。它起作用了(下面的示例)。如果其他方法都不起作用,我会这样做。但是我更希望 1. 了解为什么会发生这种情况,2. 在 scss 全局级别修复它一次。

    下面的独立 html 文件显示了按钮有无引导类时的图标对齐问题,以及我目前最好的解决方案,即额外的 div 包装器。

    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
    
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css" crossorigin="anonymous" />
    <link href="https://fonts.googleapis.com/css?family=Material+Icons|Material+Icons+Outlined" rel="stylesheet">
    
    
    <button>
      <i class="fa fa-sign-in-alt"></i>
      <i class="material-icons">login</i>
      Login
    </button>
    
    <button style="display:flex; align-items:center">
      <i class="fa fa-sign-in-alt"></i>
      <i class="material-icons">login</i>
      Login
    </button>
    
    <button class="btn btn-lg btn-primary ">
      <i class="fa fa-sign-in-alt"></i>
      <i class="material-icons">login</i>
      Login
    </button>
    
    <button class="btn btn-lg btn-primary ">
      <div style="display:flex; align-items:center">
        <i class="fa fa-sign-in-alt"></i>
        <i class="material-icons">login</i>
        Login
      </div>
    </button>
    
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL" crossorigin="anonymous"></script>
  • 材质图标均匀地排列在字体基线处的 512x512 方块内。

    与 fontAwesome 或常规(字母)字体不同,可见的字形/图标形状在视觉上与基线不对齐

    baseline

    作为一种解决方法,您可以添加基线移位类,例如使用 translateY() 变换。

    .material-icons-baseline {
      transform: translateY(0.2em)
    }
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
    
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css" crossorigin="anonymous" />
    <link href="https://fonts.googleapis.com/css?family=Material+Icons|Material+Icons+Outlined" rel="stylesheet">
    
    <h3>Baseline shift</h3>
    <p>
      <i class="material-icons material-icons-baseline">home</i> Home
      <i class="material-icons material-icons-baseline">login</i> Login
    </p>
    
    <h3>No Baseline shift</h3>
    <p>
      <i class="material-icons">home</i> Home
      <i class="material-icons">login</i> Login
    </p>
    
    <button>
      <i class="fa fa-sign-in-alt"></i>
      <i class="material-icons material-icons-baseline">login</i>
      Login
    </button>
    
    <button style="display:flex; align-items:center">
      <i class="fa fa-sign-in-alt"></i>
      <i class="material-icons">login</i>
      Login
    </button>
    
    <button class="btn btn-lg btn-primary ">
      <i class="fa fa-sign-in-alt"></i>
      <i class="material-icons material-icons-baseline">login</i>
      Login
    </button>
    
    <button class="btn btn-lg btn-primary ">
      <div style="display:flex; align-items:center">
        <i class="fa fa-sign-in-alt"></i>
        <i class="material-icons">login</i>
        Login
      </div>
    </button>
    
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL" crossorigin="anonymous"></script>
    
    </body>
    
    </html>
  • Bootstrap 5 模态框在 AJAX 内容加载后才会打开。这对我的用户来说是一种糟糕的用户体验,因为用户在单击“查看”按钮后必须等待几秒钟才能打开模态框!话虽如此

    Bootstrap 5 模态框在 AJAX 内容加载后才会打开。这对我的用户来说是一种糟糕的用户体验,因为用户在单击按钮后必须等待几秒钟才能打开模态框 View

    那么话虽如此,我如何在点击时立即加载 Bootstrap 5 模式?让 AJAX 内容在模式打开后需要 2-3 秒或更长时间才能加载。

    这是触发模式的按钮: <button data-id="269" class="view-post">View</button>

    以下是加载模态内容的 JS 代码:

    jQuery(function($) {
        $('body').on('click', '.view-post', function() {
            var data = {
                'action': 'load_post_by_ajax',
                'id': $(this).data('id'),
                'security': blog.security
            };
            $.post(blog.ajaxurl, data, function(response) {
                response = JSON.parse(response);
                $('#postModal h5#postModalLabel').text(response.title);
                $('#postModal .modal-body').html(response.content);
                var postModal = new bootstrap.Modal(document.getElementById('postModal'));
                postModal.show();
            });
        });
    });
    
  • 我有一个输入框,如果单击按钮时输入的值无效,则应发出引导警报。我希望警报出现在输入框的顶部。现在,它显示在输入框下方...

    我有一个输入框,如果按钮单击时的值无效,则应发出引导警报。我希望警报出现在输入框的顶部。

    现在,它显示在输入框下方。有没有办法让它出现在页面中间的 文本框上方

    const btn = document.getElementById("mybtn");
    btn.addEventListener("click", () => {
      document.getElementById("show-alert").classList.remove("d-none")
    });
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet"/>
    <script src="https://cdn.jsdelivr.net/npm/@popperjs/[email protected]/dist/umd/popper.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js"></script>
    
    <div class="d-flex align-items-center justify-content-center" id="record">
        <div class="input-group mb-3 input-group-lg w-50">
          <input type="text" class="form-control" id="rec-id" placeholder="Enter ID">
          <button class="btn btn-success" id="mybtn" type="button">Enter</button>
        </div>
    </div>
    
    <div class="d-flex align-items-center justify-content-center d-none" id="show-alert">
        <div class="alert alert-danger alert-dismissible fade show row">
          <button type="button" class="btn-close" data-bs-dismiss="alert"></button>
          <strong>Danger!</strong> Button was clicked
        </div>
      </div>

    另外,关闭警告框时,有没有办法 d-none 重新添加该类?

  • 我想编译 Bootstrap 源 bootstrap.min.js 以排除未使用的 Javascript 插件,以减少文件的 KB 大小,并创建一个仅包含所用插件的新文件...

    我想编译 Bootstrap 源 bootstrap.min.js 以排除未使用的 Javascript 插件,以减少文件的 KB 大小,并创建一个仅包含所用插件的新文件。

    假设我当前仅使用 offcanvas.js dropdown.js :如何从文件中删除所有 js 模块(alert.js、button.js、carousel.js、toast.js 和所有其他模块) botstrap.min.js ,而仅保留 offcanvas.js 和 dropdown.js?

    Bootstrap 建议使用两种方法: Lean JavaScript or Webpack 和 bundler ,但我没能应用它们。我相信该机制与 SASS 将 SCSS 文件编译为 CSS(我做得很正确)相同,或者可能不同,但对于 Javascript 我失败了。

    我的想法(我不知道这是否好,也许还有其他最好的方法)是创建一个文件,我只导入 offcanvas.js 和 dropdown.js。接下来编译它,然后创建 my.bootstrap.min.js

    有人能给我举一个实际的例子吗?谢谢大家的帮助!

  • JS 模块远不及 SASS。SASS 需要在服务器端编译为 CSS,而模块则根本不需要编译,只需在客户端包含即可。从最基本的层面上讲,它只是另一个 JS 文件,用于抽象模块,以便在多个文件中多次重复使用。你试图做的调整不值得付出努力,因为文件只加载一次,将被缓存,而且互联网不像 30 年前那么慢

  • 引用 11

    我该怎么做?请记住,我是在模式中打开博客,而不是将用户重定向到其他页面。因此,每个模式都有不同类型的内容,包括图像/视频。在模式打开之前加载所有这些图像/视频会减慢博客列表页面的速度。

  • @tacoshy 我知道互联网不像很多年前那么慢了,但出于与谷歌评分相关的 SEO 原因,我需要减少 js 文件的大小。现在 bootstrap.min.js 是 60.3KB。我知道它很小,但我想让它更小。为什么我要有一个充满我不使用的插件代码的文件?(这是一个反问句)。你说这不值得做,好吧你是对的,但我还是想做。你能帮我吗?谢谢

  • 我正在尝试创建一个 POS 应用程序,其中单个产品可以有多个价格。因此,如果产品有多个价格,那么我会显示一个模式,但问题是我已经集成了

    我正在尝试创建一个 POS 应用程序,其中单个产品可以有多个价格。因此,如果产品有多个价格,那么我会显示一个模式,但问题是我已在该模式中集成了快捷方式,但当第一次打开模式时,我想将焦点放在第一个表行上。我该怎么做?

    enter image description here

    这是我的代码

     useEffect(() => {
        const handleShortCut = (e) => {
          const totalButtons = buttonsRef.current.length;
    
          if (e.altKey && e.key === 'ArrowUp') {
            setFocusedIndex((prevIndex) => (prevIndex - 1 + totalButtons) % totalButtons);
          } else if (e.altKey && e.key === 'ArrowDown') {
            setFocusedIndex((prevIndex) => (prevIndex + 1) % totalButtons);
            if (focusedIndex === totalButtons - 1) {
              setFocusedIndex(0); // Wrap around to the first element
            }
          } else if (e.key === 'Enter') {
            // Trigger a click event on the focused button
            const focusedButton = buttonsRef.current[focusedIndex];
            if (focusedButton) {
              focusedButton.click();
            }
          }
        };
    
        window.addEventListener("keydown", handleShortCut);
        return () => {
          window.removeEventListener("keydown", handleShortCut);
        };
      }, [focusedIndex]);
    
      useEffect(() => {
        buttonsRef.current[focusedIndex]?.focus();
        buttonsRef.current.forEach((button, index) => {
          if (index === focusedIndex) {
            button.style.backgroundColor = 'rgba(255, 0, 0, 0.3)';
          } else {
            button.style.backgroundColor = ''; 
          }
        });
      }, [focusedIndex]);
    
      useEffect(() => {
        console.log(2);
        if (focusedIndex === 0 || focusedIndex == null) {
          console.log(1);
          buttonsRef.current[0]?.focus();
          buttonsRef.current.forEach((button, index) => {
            if (index === 0) {
              button.style.backgroundColor = 'rgba(255, 0, 0, 0.3)';
            } else {
              button.style.backgroundColor = '';
            }
          });
        }
      }, [focusedIndex]);
    
    

    表格代码

     <tbody>
                  {multiplePrices.map((price, index) => (
                    <tr key={Math.random(Math.random() * Math.random())}
                      onClick={() => {
                        setProductIntoTheCart(price);
                        setmodal_standard(!modal_standard)
                        setFocusedIndex(null)
                      }}
                      ref={(el) => (buttonsRef.current[index] = el)}
                    >
                      <td>{index + 1}</td>
                      <td>&#8377; {price.price_mrp}</td>
                      <td>&#8377; {price.price_purchase}</td>
                      <td>&#8377; {price.price_sales}</td>
                      <td>&#8377; {price.price_online}</td>
                    </tr>
                  ))}
                </tbody>
    
  • @Keith 您能否将您的评论作为答案发布,并附上完整的代码?我无法理解。当我在最后 2 分钟内引用您的内容时,它只显示“正在加载...”

  • 引用 15

    它改变了让您感到困惑的“精简 JS”部分,使其不再令人困惑。像所有其他与 JS 相关的内容一样,您可以在应用程序索引中使用纯 JS 导入语句导入所需的引导部分。因此:安装引导程序,然后使用 Bootstrap 在其“优化”文档中向您展示的语法编写所需的导入。然后您的捆绑器将

  • 很久没有使用 jQuery 了,但你应该能够显示对话框,预填充一些加载指示器等,调用你的 ajax,然后在完成后填充新数据。

    例如。

    jQuery(function($) {
        $('body').on('click', '.view-post', function() {
            var data = {
                'action': 'load_post_by_ajax',
                'id': $(this).data('id'),
                'security': blog.security
            };
            //lets have a reference to title & body element
            var title = $('#postModal h5#postModalLabel');
            var body = $('#postModal .modal-body'); 
            //create our modal dialog
            var postModal = new bootstrap.Modal(document.getElementById('postModal'));
            //pre-populate with some loading info.
            title.text('Loading..');
            body.html('Please wait.');
            //now show dialog
            postModal.show();
            //now call ajax post
            $.post(blog.ajaxurl, data, function(response) {
                response = JSON.parse(response);
                //now update dialog with new data.
                title.text(response.title);
                body.html(response.content);
            });
        });
    });
    
  • 太棒了。我已经花了好几个小时了!浏览了 Bootstrap 5 文档和在线资源,但都没有成功。非常感谢 :)

  • 似乎您想要一个 垂直居中的模式 。它可能会为您提供更好、更易于访问的用户体验。

    如果您确实需要警报,Bootstrap 提供了 方法 。始终尝试 使用 库,而不是与库一起使用,以减少工作量。这也是使其可重复使用的方法。

    要回答所问的问题,请使用 定位类 。我过去常常 position-fixed 根据视口而不是父元素来设置警报,并且居中是通过 top-50 start-50 translate-middle .

    const btn = document.getElementById("mybtn");
    btn.addEventListener("click", () => {
      document.getElementById("show-alert").classList.remove("d-none")
    });
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" />
    <script src="https://cdn.jsdelivr.net/npm/@popperjs/[email protected]/dist/umd/popper.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js"></script>
    
    <div class="d-flex align-items-center justify-content-center" id="record">
      <div class="input-group mb-3 input-group-lg w-50">
        <input type="text" class="form-control" id="rec-id" placeholder="Enter ID">
        <button class="btn btn-success" id="mybtn" type="button">Enter</button>
      </div>
    </div>
    
    <p>Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. </p>
    
    <p>Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. </p>
    
    <p>Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. </p>
    
    <p>Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. </p>
    
    <p>Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. Other content. </p>
    
    <div class="position-fixed top-50 start-50 translate-middle d-flex align-items-center justify-content-center d-none" id="show-alert">
      <div class="alert alert-danger alert-dismissible fade show row">
        <button type="button" class="btn-close" data-bs-dismiss="alert"></button>
        <strong>Danger!</strong> Button was clicked
      </div>
    </div>
  • 我试图访问我公司的一个系统的 API,但最终被拒绝,因为“API 用于接口自动化,允许访问可能会影响性能……

    我试图访问我公司系统之一的 API,但最终被拒绝了,因为“API 用于接口自动化,允许访问可能会影响性能”。我怀疑有人咨询了一位非技术人员,这就是我的请求被拒绝的原因(第一个问题是它是供个人使用还是全公司使用,目前我只想尝试自动化一些事情,所以我说只供我自己使用)。

    这听起来像是拒绝访问的正当理由吗?我每个月可能会下载几 GB 的数据(只是原始数据,没有图像或任何其他数据),这并不重要,因为这个系统每天有成千上万的用户。我不是超级技术人员,但如果这是主要问题,那么对密钥进行速率限制似乎非常简单。我之前曾使用过 Twitter、Instagram、证券交易所等的 API,我认为如果允许访问 API 可能会对性能产生很大影响,那么这些 API 就不会如此公开。

    建议是使用不同的系统(我试图避免使用它,因为它合并了来自多个系统的数据并且不干净,所以我想自己重新创建一些功能)或通过拥有该系统但不懂技术的财务团队来运行它。

    如果我获得访问权限,我希望避免必须承诺实际创建某些东西,因为这只是我有空闲时间时做的一个副项目,所以这不是我喜欢的路线,但如果它影响系统性能是一个合理的担忧,我不想推动它。

    谢谢

    这是一个更具概念性的问题,而不是我尝试过的实际代码

  • 这很可能是一个合理的担忧。公司可以保护他们的系统,通常的规则是拒绝访问,除非你能证明业务原因。你需要通过既定的渠道。如果请求来自企业主,它会得到更好的接受。

返回
作者最近主题: