我想记录链接上的所有点击.
我写了一个小记录器,可以通过url调用(返回一个空页面).使用jquery-ajax方法调用此URL.但遗憾的是,如果用户使用firefox(IE中的一切看起来都很好),则不会记录每次点击.
我尝试了很多东西,但是没有解决这个问题的方法,有没有胶水?
HTML的代码:
<a href="http://google.com" onclick="return loggClick();">Click</a>
Run Code Online (Sandbox Code Playgroud)
JS-jQuery的Skript:
function loggClick(){
$.ajax({
type: "POST",
url: "Logger.ff", //dynamic url to logging action
data: {
sid: 'abc123' //random data
},
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
cache: false
});
return true;
}
Run Code Online (Sandbox Code Playgroud)
编辑:我在示例中错过了我必须在js调用中传递动态参数,所以它"不可能"删除onclick事件:(
我有一个需要新功能的传统固件应用程序.应用程序的大小已经接近设备的有限闪存容量,并且少数新功能和变量将其推到了边缘.打开编译器优化可以解决这个问题,但客户对这样做很谨慎,因为它们过去曾导致过失败.那么,在重构C代码以产生较小的输出时,需要注意哪些常见的事情?
我正在为Swing提供学习曲线并正在阅读InputMap和ActionMap.关于Swing的O'Reilly书中所说的关键词ActionMap可以是任意的Object,但按照惯例是Strings.
有没有理由使用除了String?之外的对象?(例如enum)
我认为使用String文字是不好的做法,因为它们可能输入错误而不会产生任何编译错误.所以我猜测将ActionMap键存储为一次static final定义的不可变类变量(例如MyAction.NAME)是一种很好的做法.
编辑:只是为了澄清,当我阅读文档时想到的想法是使用enum而不是String.有理由我应该使用String吗?
MSTest框架有一个CollectionAssert,可以接受ICollections.我的方法返回一个IList.显然列表不是集合..
有没有办法让我的IList成为ICollection?
我有下面的方法,它正确地将ret值设置为0(表示setenv成功),但是当我检查这个环境变量是否实际设置时,它不存在.为什么会这样?
void Class::mysetenv(char* a, char* b)
{
if(a==0 || b==0)
return;
int ret = setenv(strdup(a), strdup(b), 1);
printf("ret: %d %s %s\n", ret, a, b);
}
Run Code Online (Sandbox Code Playgroud) 这是一个之前被问过的问题(大文本和图像在sql中),但主要用于将要更改的数据.在我的情况下,数据将被存储并且永远不会改变.把所有东西放在一起似乎是明智的.
我有什么理由不将静态二进制数据存储在数据库中吗?
假设这是一件明智的事情,将这些数据存储在单独的表中是否有任何好处?(你可能现在开始意识到我不是数据库专家......)
澄清:可能会有不超过10-20个用户,但这些用户将在美国和英国.在任何情况下都必须传输二进制数据.
请考虑以下代码段:
public interface MyInterface {
public int getId();
}
public class MyPojo implements MyInterface {
private int id;
public MyPojo(int id) {
this.id = id;
}
public int getId() {
return id;
}
}
public ArrayList<MyInterface> getMyInterfaces() {
ArrayList<MyPojo> myPojos = new ArrayList<MyPojo>(0);
myPojos.add(new MyPojo(0));
myPojos.add(new MyPojo(1));
return (ArrayList<MyInterface>) myPojos;
}
Run Code Online (Sandbox Code Playgroud)
return语句执行不编译的转换.如何将myPojos列表转换为更通用的列表,而不必遍历列表中的每个项目?
谢谢
在我的窗口中,我有加载和保存方法的按钮.我使用CommandBinding,并且save-button具有CanExecute属性,以防止用户在加载数据之前保存数据.
CanExecute-Methode连接到一个名为"canSaveXML"的简单bool值
private void Save_CanExecute(object sender, CanExecuteRoutedEventArgs e)
{
if (canSaveXML == false)
{
e.CanExecute = false;
}
else
{
e.CanExecute = true;
}
e.Handled = true;
}
Run Code Online (Sandbox Code Playgroud)
我的意图是在加载数据后设置canSaveXML = true,但是在值发生更改后控件不会刷新.我做了一些阅读,发现我必须调用CommandManager.InvalidateRequerySuggested.我现在这样做,我的代码看起来像这样.
canSaveXML = true;
CommandManager.InvalidateRequerySuggested();
Run Code Online (Sandbox Code Playgroud)
但控件(按钮)仍然不刷新.我仍然被禁用,直到我在UI上触发任何内容或最小化/最大化窗口.我这样做后按钮启用.
这有什么不对?
在MSDN示例中,一次又一次地使用dispatchertimer调用CommandManager.InvalidateRequerySuggested,但我拒绝相信这将是唯一的解决方案.
在尝试估计内核模块(通常是设备驱动程序)消耗的内存量时,我尝试使用size实用程序,该实用程序给出.ko(.bss,.data,.text等)的静态内存区域的大小.所以我希望这些值的总和与插入模块后立即由lsmod命令给出的输出完全相等.
在init()函数中没有执行动态内存分配(kmalloc或vmalloc)以确保它不会导致差异.那么为什么会出现不匹配?
奇怪的是,大多数时候发现不匹配是固定的!
命令输出如下所示
text data bss dec hex filename
172 448 1024016 1024636 fa27c chardev.ko
Run Code Online (Sandbox Code Playgroud)
Module Size Used by Tainted: P
chardev 1025040 0 - Live 0xc009d000
Run Code Online (Sandbox Code Playgroud) 如何确保 IIS(和 Cassini)发送带有内容类型标头(即 text/css;charset=UTF-8)的 css 和 js 文件?
c ×2
java ×2
memory ×2
.net ×1
asp.net ×1
binary-data ×1
c# ×1
casting ×1
content-type ×1
database ×1
embedded ×1
firefox ×1
generics ×1
icollection ×1
iis ×1
ilist ×1
javascript ×1
jquery ×1
kernel ×1
linux ×1
logging ×1
mstest ×1
onclick ×1
optimization ×1
setenv ×1
size ×1
swing ×1
unit-testing ×1
wpf ×1