Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.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
我的问题是关于作者在aem中对组件对话框中的每个选项卡重新排序的能力_Aem - Fatal编程技术网

我的问题是关于作者在aem中对组件对话框中的每个选项卡重新排序的能力

我的问题是关于作者在aem中对组件对话框中的每个选项卡重新排序的能力,aem,Aem,我想知道如何为每个选项卡提供编号,以便作者可以根据他们的要求提供编号。这不是很可能的。在构建组件时,预先确定顺序,提供有意义的标签,然后继续。触摸式用户界面不提供您需要的功能。这并非完全可能。在构建组件时,预先确定顺序,提供有意义的标签,然后继续。触摸式用户界面没有提供您所需要的功能。这是我听说过的最奇怪的要求。你当然可以这样做,但在系统范围内这样做并没有多大意义,因为一个作者可以以一种方式感受对话,而另一种方式则完全不同。唯一合理的解决方案是使用javascript以作者希望的方式重新排序选项


我想知道如何为每个选项卡提供编号,以便作者可以根据他们的要求提供编号。

这不是很可能的。在构建组件时,预先确定顺序,提供有意义的标签,然后继续。触摸式用户界面不提供您需要的功能。

这并非完全可能。在构建组件时,预先确定顺序,提供有意义的标签,然后继续。触摸式用户界面没有提供您所需要的功能。

这是我听说过的最奇怪的要求。你当然可以这样做,但在系统范围内这样做并没有多大意义,因为一个作者可以以一种方式感受对话,而另一种方式则完全不同。唯一合理的解决方案是使用javascript以作者希望的方式重新排序选项卡,然后将此特定组件的设置保存在其用户配置文件中。您可以通过使用类别cq.authoring.dialog创建一个clientlib来开始实现它。在JS中,您必须监听特定的对话框加载事件,如下所示。我认为这应该足够了,这是一个很好的起点

         // necessary as no granite or coral ui event is triggered, when the dialog is opened
        // in a fullscreen mode the dialog is opened under specific url for serving devices with low screen resolution       
        if (location.href.match(/mnt\/override/)) {
            $(window).on('load', function(e) {
                setTimeout(doSomething, 100);
            });
        } else {
            $(document).on('dialog-ready', function(e) {
                Coral.commons.ready(function(){
                    setTimeout(doSomething, 100);
                });
            });
        }

您可以使用granite:rel在对话框定义中定义特定标识符,并在稍后的用户设置中使用save。您可以使用选项卡选择器[role=“tab”]定义拖放事件。

这是我听说过的最奇怪的要求。你当然可以这样做,但在系统范围内这样做并没有多大意义,因为一个作者可以以一种方式感受对话,而另一种方式则完全不同。唯一合理的解决方案是使用javascript以作者希望的方式重新排序选项卡,然后将此特定组件的设置保存在其用户配置文件中。您可以通过使用类别cq.authoring.dialog创建一个clientlib来开始实现它。在JS中,您必须监听特定的对话框加载事件,如下所示。我认为这应该足够了,这是一个很好的起点

         // necessary as no granite or coral ui event is triggered, when the dialog is opened
        // in a fullscreen mode the dialog is opened under specific url for serving devices with low screen resolution       
        if (location.href.match(/mnt\/override/)) {
            $(window).on('load', function(e) {
                setTimeout(doSomething, 100);
            });
        } else {
            $(document).on('dialog-ready', function(e) {
                Coral.commons.ready(function(){
                    setTimeout(doSomething, 100);
                });
            });
        }

您可以使用granite:rel在对话框定义中定义特定标识符,并在稍后的用户设置中使用save。您可以使用选项卡选择器[role=“tab”]定义拖放事件.

因此,当作者认为选项卡3中的内容比选项卡1更相关,并希望将其从选项卡3移动到选项卡1,反之亦然时,是否有任何方法可以让作者重新排序组件中的选项卡?标准对话框和作者的管理权限不可能做到这一点。请记住:作者也有权写入
/apps
,每个作者都会覆盖以前的更改。这样的功能需要构建,但我建议只打开一张票据,明确变更的要求。因此,当作者觉得选项卡3中的内容比选项卡1中的内容更相关,并希望将其从选项卡3移动到选项卡1,反之亦然时,是否有任何方法可以让作者重新排序组件中的选项卡可以使用标准对话框和作者的管理权限。请记住:作者也有权写入
/apps
,每个作者都会覆盖以前的更改。像这样的功能需要构建,但我建议只打开一张票据,明确变更的要求。