我正在尝试扩展现有Liferay portlet的一些功能.作为其中的一部分,我想使用Alloy UI来修改portlet中字段的值.有一个预先存在的<aui:script>
块我想定义我的自定义函数.我继续尝试使用A.one('element')
,但我收到错误"A未定义". A.one()
在同一个.jsp文件中的其他位置使用,但不在<aui:script>
块中,并且它按预期运行.
我试过谷歌搜索这个问题无济于事.我尝试过的一个解决方案是在元素块中包含"use"语句,但是当从jsp调用时,这使得该块中的所有函数都未定义.
我所说的"使用"声明是这样的:
<aui:script use="aui-node,aui-base">
// ... script
</aui:script>
Run Code Online (Sandbox Code Playgroud)
这是我正在尝试做的大致概述:
<aui:script>
function save(){
// This is where I'm getting the 'A is not defined' error.
var titleNode = A.one('input[name=title]');
if (titleNode) {
// do stuff with titleNode
var titleVal = titleNode.val();
var titleSubstr = titleVal.substring(0, titleSubstr.lastIndexOf('/'));
titleNode.val(titleSubstr);
}
// other save-related code here
}
function otherFunction() {
// some other functionality
}
</aui:script>
Run Code Online (Sandbox Code Playgroud) 背景
我正在开发一个应用程序,该应用程序应该以相同的方式在从 XP 开始的每个 Windows 平台上运行。通过 .NET 框架,这在大多数情况下都非常容易。该应用程序可在各种触摸表面上运行。该应用程序面向 .Net 3.0,但如果由于某种原因我应该迁移到 .Net 3.5,我可以这样做。我无法使用4.0。
该应用程序通过 System.Drawing 命名空间大量使用 GDI+。现在,我了解到 GDI+ 要么根本没有硬件加速,要么只在极少数显卡中加速,所以我预计会出现一些性能问题。然而,这个问题很明显,并且使应用程序的可用性显着降低。如果可以通过简单的修复来避免的话,我宁愿不将整个应用程序重写为目标 DirectX 或 OpenGL。
问题
我们最近在其中一张触摸桌上安装了 Windows 7 64 位。这是该应用程序首次在 Windows 7 64 位计算机上运行。无论如何,一次使用多个手指在设备上进行任何绘图(特别是 DrawLine)都会导致严重的延迟。这种延迟在 32 位 Windows XP 或 32 位 Windows 7 上并不明显,因此我认为它可能特定于 64 位 Windows 7(我没有 64 位 XP 机器来测试)。
该应用程序还被迫作为 32 位应用程序运行,因为其中一个 .dll 文件只有 32 位库可用于编译它。我在某处读到,在 64 位系统上强制进程进入 32 位模式可能会导致性能问题,但是当我升级我们正在使用的 SDK 并制作 64 位特定的 .dll 和应用程序时,问题仍然存在。
我在 StackOverflow 的另一个帖子中读到,在 GDI+ 方面,32 位和 64 位应用程序之间应该没有区别。这里的情况似乎并非如此。
那么问题来了:你们知道为什么 Windows 32 …
我在 WPF (.NET 4.0) 中的一个控件的工具栏上的按钮上附加了一个上下文菜单。上下文菜单在定义上下文菜单的 XAML 中分配有一个样式。如果尚未打开按钮的上下文菜单,则左键单击该按钮将打开该菜单。
这是相关的 XAML:
<Button x:Name="fileButton" Foreground="White" Margin="7, 0, -3, 0" VerticalAlignment="Stretch" MaxHeight="70" MaxWidth="78" MinHeight="55" MinWidth="62" Style="{DynamicResource ImageButton}" utils:WpfImageUtil.Image="{StaticResource fileButton}" Template="{DynamicResource GlassButton}" Content="File" Visibility="Visible" Click="fileButton_Click">
<Button.ContextMenu>
<ContextMenu Style="{DynamicResource ContextMenuStyle}">
<MenuItem x:Name="saveMenuItem" Header="Save" Click="saveMenuItem_Click" Style="{DynamicResource MenuItemStyle}" />
<MenuItem x:Name="saveDrawingMenuItem" Header="Save Drawing" Click="saveMenuItem_Click" Style="{DynamicResource MenuItemStyle}" />
<MenuItem x:Name="openMenuItem" Header="Open" Style="{DynamicResource MenuItemStyle}">
<MenuItem x:Name="openFromFile" Header="From File" Style="{DynamicResource MenuItemStyle}" />
<MenuItem x:Name="openFromDesktop" Header="From Desktop" Style="{DynamicResource MenuItemStyle}" />
</MenuItem>
<MenuItem x:Name="iconsMenuItem" Header="Icons" ItemsSource="{Binding}" Style="{DynamicResource MenuItemStyle}"/>
<MenuItem x:Name="prefsMenuItem" Header="Preferences" Style="{DynamicResource MenuItemStyle}"/> …
Run Code Online (Sandbox Code Playgroud)