这只是一个奇怪的问题,背后的推理纯粹是为了让我更加懒惰.这就是我的意思..
说我有一个网站,在那里的htaccess让漂亮的网址,并把数据发送到$ _GET ["P"]数组键为当前页面".在索引文件中,我设置了页面,我要做的第一件事是在配置文件$ _PAGE数组中设置一些页面设置.现在,假设我有多个页面,我想要具有相同的设置,(在页面中,其他东西可能会稍微改变,与设置不对应.所以目前,我有一些看起来像以下2个php文件.
// index.php
include('page.array.php');
echo '<title>'.$_PAGE[$_GET['p']]['title'].'</title>';
// page.array.php
$_PAGE = array(
'some/page/' => array(
'title' => 'This is an example'
)
)
$_PAGE['some/aliased/page/'] = $_PAGE['some/page/'];
Run Code Online (Sandbox Code Playgroud)
请注意,在页面数组的末尾,为了"别名"页面,我必须在创建数组后将其添加到结尾.
在PHP中是否有任何方法可能我只是不知道,这可能会让我有点懒惰(同时添加到更干净的代码),并使它,所以我可以简单别名的密钥?我注意到以下内容不起作用,我想我的问题是,有没有办法在创建数组期间在同一个数组中创建别名?
这个例子不起作用:
// page.array.php
$_PAGE = array(
'some/page/' => array(
'title' => 'This is an example'
),
'some/aliased/page/' => $_PAGE['some/page/']
)
Run Code Online (Sandbox Code Playgroud)
也许是一种从内部引用"this"数组的方法?
如果无法做到这一点,我对"不可能"的答案没有疑问.虽然如果你有更好的方法来解决这个问题,除了我上面描述的方式,为了更懒惰,我会有兴趣阅读它:)
好吧,我的问题是,我创建了一个jQuery插件,它将点击和鼠标悬停事件绑定到选择器提供的元素.现在,我需要这些事件,而不是".live"事件,经过大量的搜索,我发现这里的 'a'解决方案
其中,给定的解决方案如下..
(function($) {
$.fn.liveBindTest = function() {
return this.each(function() {
$(this).click(function(){
console.log('click');
return false;
});
});
};
})(jQuery);
$('a').live('click', function(){ $(this).liveBindTest(); });
Run Code Online (Sandbox Code Playgroud)
虽然,这没有意义,因为插件不会将实时点击绑定到提供的"选择器".另一方面,它会''将'click事件绑定到选择器元素.(在这种情况下,锚标记,而不是由开发者选择器集动态提供)
上面的示例只是采用漫长的路径将实时点击绑定到所有锚元素.其中,适用于您需要为插件实时绑定特定元素的情况.但我的插件完全基于最终开发人员使用插件提供的选择器.所以这个解决方案意味着开发人员每次都要,
A.在实际启动插件之前,需要手动绑定PLUGIN需要的每个实时事件.有点像..
$('*:not(.complicatedSelectorHere)').live('click', function(){
$(this).liveBindTest();
});
Run Code Online (Sandbox Code Playgroud)
要么
B.他们需要进入jQuery.plugin.js文件,转到代码的底部,然后修改那里的实时事件.这将是一种丑陋的做事方式,并且根本不可移动,这也是所需要的,便携性.
所以我最后的问题,以确保每个人都清楚..
问题:如何绑定LIVE
事件以ALL
SELECTORS
提供给插件?
请不要在下面提供明显的解决方案,因为它不起作用......
(function($) {
$.fn.liveBindTest = function() {
return this.each(function() {
$(this).live('click', function(){
console.log('live clicked');
return false;
});
});
};
})(jQuery);
Run Code Online (Sandbox Code Playgroud) 我遇到了一个名为 nircmd 的 Windows exe,它允许您通过命令行做一些非常酷的事情。我有一个我正在协助的项目,我需要即时调整 Windows 环境的大小,采用最大化的内容并在调整大小后使其最大化。在互联网上搜索时,我偶然发现了 nircmd 很多,但我似乎无法获得我需要工作的功能来处理它。这是:
setdisplay 800 600 24
Run Code Online (Sandbox Code Playgroud)
我在 nircmd 中尝试了使用此功能的所有不同选项,但它在 Windows 7 环境和 Windows Server 上都没有任何作用。我在谷歌上搜索了“nircmd setdisplay 不工作”或“nircmd setdisplay 错误”等,但在互联网上找不到任何关于它的信息。我觉得这很奇怪,因为我已经在我的台式机、笔记本电脑和 Windows 服务器上测试过它,而这 3 个都没有做。
任何人都可以帮助我解决我可能做错的事情吗?或者指向命令行驱动的方向,即时分辨率更改程序?(我也试过 QRes,结果相同,但 Windows Server 给了我一个错误(我现在不记得了)。它必须是命令行驱动的,因为这是一个简单的函数,将在里面一个 php 文件,最后只有少数人访问。