我有一个页面,其中有几个搜索/过滤按钮,当点击时,通过AJAX刷新下面列表的内容.
在这个过程中,我正在修改历史记录(通过pushstate),以便新的过滤页面可以添加书签,因此后退按钮可以正常工作.我也在听popstate事件,对Back做出反应.
我的代码看起来或多或少像这样:
window.addEventListener("popstate", function(ev) {
if (!window.history_ready) { return; } // Avoid the one time it runs on load
refreshFilter(window.location.href, true);
});
refreshFilter: function(newURL, backButtonPressed){
$.ajax({ url: newURL}).done( blah );
if (!backButtonPressed) {
window.history_ready = true;
history.pushState(null, null, newURL);
}
}
Run Code Online (Sandbox Code Playgroud)
除了一个奇怪的案例外,这种方法效果很好......
至少在最新的Chrome中
为什么会发生这种情况,我该如何避免呢?
基本上,我想要的是能够探索ActiveX DLL.我通常启动VB 6,将DLL添加到项目的"引用",并使用对象资源管理器.
但是,在这个特定的机器上我无法安装VB/VS.
我确信有一个工具可以做到这一点.有谁知道吗?
谢谢
我在一个我管理的数据库中看到了一些存储过程,它们有常规的存储过程图标,但旁边有一个小挂锁.
我看到的差异是我无法"修改"它们,如果我尝试编写脚本,它会说:
文字是加密的.
这是因为这些是CLR存储过程吗?
它们是"常规"程序,但以某种方式加密/保护?
有没有办法获得那些代码(T-SQL或IL)?
我正在尝试使用SQL事件探查器解决此问题(SQL 2008)
在生产中运行跟踪几天后,最后再次发生错误,现在我正在尝试诊断原因.问题是跟踪有400k行,其中99.9%来自"报表服务器",我甚至不知道为什么会这样,但它似乎每秒都在ping SQL Server ......
有没有办法从跟踪中过滤掉一些记录,以便能够查看其余的记录?
我可以使用当前的.trc文件执行此操作,还是必须再次运行跟踪?
是否有其他应用程序可以查看可以为我提供此功能的.trc文件?
假设我有以下代码:
Memcached->set('key', 'value', 60); (expire in one minute)
while (1) {
sleep 1 second;
data = Memcached->get('key');
// update data
Memcached->set('key', data, 60);
}
Run Code Online (Sandbox Code Playgroud)
在循环60次迭代之后,密钥是否会过期,当读取它时,我会得到一个NULL?或者连续设置是否会在最后一次设置后每次持续推迟到期时间1分钟?
文档提到了这一点,我在不同的环境中对此进行了测试,我很确定我得到了不同的结果.
我正在创建一个应用程序,它在内存中保存大量用户数据,并且它主要是将它保存在List <T>结构中(当我需要查找时,还有一些Dictionary <T,T>).
而且我想知道......
列表效率如何?我可以为每个人获得多少内存开销?(也就是说,除了它们包含的对象之外,还有内存空间)每次实例化时,我需要支付多少惩罚?
有更有效的方法吗?
字典只是HashTables,对吧?或者它们是效率较低的数据结构?
我想使用Arrays,但是我有一个典型的问题就是一直在添加和删除它们,所以不得不增长/缩小它们会很痛苦.
有什么想法/建议吗?
编辑:我知道我的基本数据结构101,以及为什么链接列表更适合添加/删除,而HashTable更适合随机访问.
我最关心的是.Net的idionsyncracies.例如,每个结构浪费了多少内存.浪费时间来初始化/杀死它们.
例如,如果它需要花费大量时间来实例化/ GC列表,但清除它并不多,也许我应该保留一小部分列表等待我,并清除它们并将它们发送回池中完成后,而不是简单地解除引用它们.
或者,如果Hashtables访问速度更快但浪费了大量内存,我可能更喜欢使用Lists并遍历它们,以获得小项目数.
而且我也非常希望专注于内存使用,因为我的应用程序非常耗费内存(想想memcached)...有谁知道我在哪里可以找到这样的信息?
在我正在处理的网络应用程序中,我正在捕获onBeforeUnload以询问用户他是否真的要退出.
现在,如果他决定留下来,我想做很多事情.我想弄清楚的是他实际上选择了留下来.
我当然可以声明一个SetTimeout为"x"秒,如果它触发,那么这意味着用户仍然在那里(因为我们没有被卸载).问题是用户可以花时间决定是否留下来......
我首先希望在对话框显示时,SetTimeout调用不会触发,所以我可以设置一个短暂的超时,并且只有在用户选择留下时它才会触发.但是,在显示对话框时会发生超时,因此不起作用.
我尝试的另一个想法是在窗口/文档上捕获mouseMoves.在显示对话框时,mouseMoves确实不会触发,除了一个真正适用于我的情况的奇怪异常,因此也不起作用.
谁能想到其他方法呢?
谢谢!
(如果您好奇,捕获mouseMove不起作用的原因是我的页面中有一个IFrame,其中包含来自另一个域的网站.如果在卸载页面时,焦点位于IFrame内,对话框显示,然后当鼠标从IFrame内部移动到外部时(至少在Firefox中),我得到MouseMove事件触发ONCE.这可能是一个bug,但是,很可能在我们的情况下会发生,所以我不能用这种方法).
我正在尝试创建一个人们将从本地硬盘驱动器运行的网页,此页面将显示.wmv视频(也存储在本地),使用Windows Media Player
当我运行它时,IE向我显示顶部的"ActiveX警告"栏,这是我正在尝试解决的问题.如果我从Web服务器加载它,它加载正常,但从本地磁盘,它不会.
现在,显然,MS已经准确地添加了Web标记,以解决这个问题,然而,我已经尝试了一段时间才能使它工作,而事实并非如此.我仍然得到警告栏.
网络标记应该仍然有效吗?或者这是某种被弃用的东西?
我做错了吗?我应该遵循所有说明,它看起来像:
我已经尝试将它放在DOCTYPE之前,在DOCTYPE和<HTML>之间,紧跟在<HTML>之后,在文档的<HEAD>中等等.似乎没什么用.
我在IE7和IE8中试过这个
任何想法都将非常感激.
谢谢!!
我有一个Rails项目,它不时地以不可重现的方式在生产中抛出此异常.一切都在开发和测试中很好用,而且显然也在生产中,但ExceptionNotifier每隔几周都会通过电子邮件向我发送此异常...
我不知道发生了什么,所以我将尽可能多地转储有关我的环境的信息,希望其中一些可以帮助排除故障.
完整的错误是:
"Circular dependency detected while autoloading constant DeferredUpdatesHelper"
Run Code Online (Sandbox Code Playgroud)
DeferredUpdatesHelper是这样定义的模块lib/deferred_updates_helper.rb:
module DeferredUpdatesHelper
def self.something_something(params)
end
end
Run Code Online (Sandbox Code Playgroud)
我想不出这个模块有什么依赖.它非常简单,据我所知,它需要的是一个名为$ RedisPool的全局变量,因此不确定如何存在循环依赖...
该模块用于我的一个模型: models/user.rb
class User < ActiveRecord::Base
def self.process_deferred_something
DeferredUpdatesHelper.something_something(params) do
# do stuff
end
end
end
Run Code Online (Sandbox Code Playgroud)
从ActiveJob调用该方法:
class SomeJob < ActiveJob::Base
queue_as :default
def perform
User.process_deferred_something
end
end
Run Code Online (Sandbox Code Playgroud)
这是在Sidekiq流程中执行的,它每隔10分钟就会非常愉快地运行,除了偶尔我会得到其中一个......
在任何require地方都没有声明,或者至少在任何这些提到的文件中都没有声明......如上所述,在开发中一切都正常.
堆栈跟踪:
/app/vendor/bundle/ruby/2.1.0/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:492:in `load_missing_constant'
/app/vendor/bundle/ruby/2.1.0/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:184:in `const_missing'
/app/vendor/bundle/ruby/2.1.0/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:526:in `load_missing_constant'
/app/vendor/bundle/ruby/2.1.0/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:184:in `const_missing'
/app/app/models/user.rb:93:in `process_deferred_something'
/app/app/jobs/some_job.rb:5:in `perform'
/app/vendor/bundle/ruby/2.1.0/gems/activejob-4.2.1/lib/active_job/execution.rb:32:in `block in perform_now'
/app/vendor/bundle/ruby/2.1.0/gems/activesupport-4.2.1/lib/active_support/callbacks.rb:117:in `call'
/app/vendor/bundle/ruby/2.1.0/gems/activesupport-4.2.1/lib/active_support/callbacks.rb:117:in `call' …Run Code Online (Sandbox Code Playgroud) 如何从C#应用程序创建新数据库?
我假设一旦我创建它,我可以简单地生成连接字符串并连接到它,并发出所有CREATE TABLE语句.
.net ×2
activex ×1
autoload ×1
back-button ×1
dll ×1
explorer ×1
filter ×1
generics ×1
html5 ×1
javascript ×1
list ×1
locking ×1
memcached ×1
memory ×1
performance ×1
sql-server ×1
trace ×1