Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 嵌套的可排序JQuery列表不';当IE在FF中工作时,它不能在IE中工作_Php_Jquery_Nested_Jquery Ui Sortable_Draggable - Fatal编程技术网

Php 嵌套的可排序JQuery列表不';当IE在FF中工作时,它不能在IE中工作

Php 嵌套的可排序JQuery列表不';当IE在FF中工作时,它不能在IE中工作,php,jquery,nested,jquery-ui-sortable,draggable,Php,Jquery,Nested,Jquery Ui Sortable,Draggable,虽然我经常使用这个网站作为jQuery相关问题的资源,但这次我似乎找不到答案。这是我的第一篇帖子 白天工作时,我正在开发一个生成MS Word文档的信息系统。我正在开发的模块之一是为目录定义默认章节选择,并根据给定章节选择文本。用户可以提交新章节,如有必要,将其作为childchapter添加到父级,将其标记为“在TOC中采用”,并将默认文本(来自另一个模块)链接到章节 我的章节列表是从MySQL表中递归检索的,可能看起来像这样: <ul class="sortableChapterlis

虽然我经常使用这个网站作为jQuery相关问题的资源,但这次我似乎找不到答案。这是我的第一篇帖子

白天工作时,我正在开发一个生成MS Word文档的信息系统。我正在开发的模块之一是为目录定义默认章节选择,并根据给定章节选择文本。用户可以提交新章节,如有必要,将其作为childchapter添加到父级,将其标记为“在TOC中采用”,并将默认文本(来自另一个模块)链接到章节

我的章节列表是从MySQL表中递归检索的,可能看起来像这样:

<ul class="sortableChapterlist">
  <li>1</li>
  <li>2
    <ul class="sortableChapterlist">
      <li>2.1</li>
      <li>2.2</li>
      <li>2.3
        <ul class="sortableChapterlist">
          <li>2.3.1</li>
          <li>2.3.2</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>
<ul id="sortableNestedList" class="sortableChapterlist">
  <li>1</li>
  <li>2
    <ul class="sortableChapterlist">
      <li>2.1</li>
      <li>2.2</li>
      <li>2.3
        <ul class="sortableChapterlist">
          <li>2.3.1</li>
          <li>2.3.2</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>

$("#sortableNestedList").sortable({ ... });

有人对此有什么想法吗?我猜IE有点落入了多类引用“chapter_list”的陷阱,而jQuery试图处理可拖动/可排序的问题。

这是一个很长的尝试,但尝试用其他东西替换下划线,例如连字符。下划线用于在某些浏览器中导致问题


Mozilla Developer Center:.

我相信您可以通过只对根
元素而不是树中的所有元素应用排序表来解决这个问题。这在我测试过的所有浏览器中都适用,但不幸的是,这会导致稍微不太流畅的体验,因为在拖动“跳跃”很多次之后,项目将插入的位置

从本质上看,这是这样的:

<ul class="sortableChapterlist">
  <li>1</li>
  <li>2
    <ul class="sortableChapterlist">
      <li>2.1</li>
      <li>2.2</li>
      <li>2.3
        <ul class="sortableChapterlist">
          <li>2.3.1</li>
          <li>2.3.2</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>
<ul id="sortableNestedList" class="sortableChapterlist">
  <li>1</li>
  <li>2
    <ul class="sortableChapterlist">
      <li>2.1</li>
      <li>2.2</li>
      <li>2.3
        <ul class="sortableChapterlist">
          <li>2.3.1</li>
          <li>2.3.2</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>

$("#sortableNestedList").sortable({ ... });
  • 一,
  • 二,
    • 2.1
    • 2.2
    • 2.3
      • 2.3.1
      • 2.3.2
$(“#可排序嵌套列表”)。可排序({…});
感谢您的快速回复!不幸的是,它没有在一个有效的解决方案中解决。尽管如此,你发布的链接还是让我对CSS中的“不要使用”有所了解。我已经更新了源代码。但是我不是会得到所有项目的可排序列表吗?我想挑选整个章节,其中的子章节可以随意拖动并重新排序。在我看来,这是通过添加更多的
来实现的?我尝试了你的建议,但最终只能在主要项目1和2周围拖动。当我单击并按住示例2.3.1时。整个2块都会被拖拽。我还没有尝试过,但您可能想看看添加项:“ul”作为选项是否符合您的要求。应该这样做,因为我必须以某种方式对嵌套集进行分组。我想这应该/必须通过嵌套可排序列表来完成?