【问题标题】:Need help making a plugin function需要帮助制作插件功能
【发布时间】:2020-01-07 15:23:51
【问题描述】:

我正在创建一个插件,用于在调整页面大小时将面包屑元素折叠到下拉列表中。

我可以在调整大小时隐藏项目。

我似乎只能在脚本停止工作之前添加回一个项目。

任何帮助或指导将不胜感激。

我感觉这就是问题所在:

 var $t = $itemsTextArray[$itemsTextArray.length - 1];

 var $c = "<li class='breadcrumb-item'><a href='#'>" + $t + "</a></li>"; 

 $this.find('.breadcrumb-item:nth-child(2)').after($c);

 $widthOfLastItemMoved = $this.find('.breadcrumb-item:nth-child(3)').text();

https://jsfiddle.net/chrischilcoat/xfn1rwue/

【问题讨论】:

  • 将第一项添加回面包屑后,$w 不再返回大于 $widthOfLastItemMoved。
  • 另外 $widthOfLastItemMoved 错误地使用了 makeBreadCrumb() 中的 .text() 方法

标签: jquery user-interface jquery-plugins


【解决方案1】:

我真的很喜欢这个扩展的想法。话虽如此,这个脚本中有很多问题。我可以解释为什么您不再满足触发 makeBreadCrumb() 的条件,但即使已修复,仍有更多内容无法正常使用您的脚本。然而,这些是针对不同的问题。

makeBreadCrumb() 内部变化:

$widthOfLastItemMoved = $this.find('.breadcrumb-item:nth-child(3)').text();

收件人:

$widthOfLastItemMoved = $this.find('.breadcrumb-item:nth-child(3)').width();

然后在 update() 内部变化:

if ($itemsMoved > 0) {

if ($itemsMoved >= 0) {

这应该让您回到 makeBreadCrumb(),但同样还有其他问题需要解决。这些是不同的问题。

【讨论】:

  • 非常感谢,我会试试看。我知道这个脚本很糟糕,但它主要是一个原型,我将把它交给真正的前端开发人员在 react 中构建。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多