我正在使用Typeahead/Bloodhound从数据库的内容生成列表.我希望屏幕阅读器在突出显示时能够阅读血腥建议.我在元素中添加了一些咏叹调角色,试图从屏幕阅读器中读取内容.但是,突出显示时,屏幕阅读器是静音的.如果我将焦点添加到元素,那么blodhound模态窗口将关闭,这将无法正常工作.
var myTypeahead = $('.supersearch').typeahead({
highlight: true,
autoselect: true
},
{
name: 'search-content',
displayKey: 'title',
source: content.ttAdapter(),
templates:{
header: '<h3 class="typeaheadTitle">Filtering Content...</h3>',
empty: [
'<div class="noResults">',
'No Results',
'</div>'
].join('\n'),
suggestion: Handlebars.compile('<div class="searchListItem"><a href="{{link}}" class="searchLink" aria-label="{{title}}">{{title}}</a></div>')
}
});
myTypeahead.on('typeahead:cursorchanged', function($e, datum){
$(this).html(datum["value"]);
var focused = $( document.activeElement )
var submenuHighlight = focused.parent().find('.tt-cursor .searchListItem a');
console.log(submenuHighlight.text());
});
// Add aria dialog role
$('.tt-dataset-search-content').attr({
'role': 'dialog',
'aria-live': 'assertive',
'aria-relevant':'additions'
});
Run Code Online (Sandbox Code Playgroud)
这会将aria标签角色添加到输出列表和容器,但尝试通知读者此列表动态更改.我也在听cursorchanged,所以我可以隔离我需要的元素(console.log验证这个),但我不知道如何告诉读者用tt-cursor类读取当前项.
<div class="tt-dataset-search-content" role="dialog" aria-live="rude" aria-relevant="additions">
<h3 class="typeaheadTitle">Filtering Content...</h3>
<span …Run Code Online (Sandbox Code Playgroud) 我只想澄清具体分支的提交方式.
假设我正在开发一个名为"Metro"的分支.我对一些文件进行了一些更改,但我还没准备好将它们推送到远程存储库.
一个修复程序,我需要尽快修复.我需要切换到一个名为"Master"的干净分支,但我不能,因为我会覆盖我已更改的文件.在切换之前我需要提交这些.
我的问题是,如果我在"Metro"分支上提交这些更改,然后切换到干净的"Master"分支,"Metro"中所做的更改将被推送到远程"Master"仓库,因为我已经提交了它们,甚至虽然我正在推动另一个分支?
为了使它简洁,是提交隔离到分支,还是在推送到远程仓库时添加所有提交?
我在这里使用LDAP开箱即用,所以如果我以完全错误的方式做这件事,请告诉我.
我正在使用bhLDAPAuthPlugin插件使用Symfony 1.4
我正在验证用户使用LDAP登录.但是,我希望使用用户名查询LDAP表中的更多数据.所以我写这个搜索功能来根据用户名过滤结果:
function user_values($username) {
if (!$username) {
die ("Username is not there man!");
}
if (!$this->_conn) {
die ("No Connection.");
}
if (!$this->_base_dn) {
die ("No Base.");
}
$filter="samaccountname=".$username;
$attributes_ad = array("name");
$result = ldap_search($this->_conn, $this->_base_dn, $filter, $attributes_ad)
or die ("Error in search query");
$entries = ldap_get_entries($this->_conn, $result);
return($entries);
}
Run Code Online (Sandbox Code Playgroud)
我收到错误:
警告:ldap_search():搜索:错误的搜索过滤器/ ...搜索查询错误
当我运行查询.
前三个"if"是为了确保我获得了正确的搜索参数.实际搜索条件失败.
有什么建议?
UPDATE
用户名变量是jtesting
在将它放入搜索参数之前,我从函数中提取了$ username.它实际上是(jtesting).我将删除括号,看看是否可以解决问题.
在我的本地机器上,我创建的symfony项目完美无缺.
我在我的测试服务器上安装了symfony,它运行正常.当我在浏览器中转到URL时,我得到了"Symfony Project Created"页面.我运行了check_configuration.php,一切都结束了.
我遇到的问题是:我创建了我的数据库并上传了表数据.我已经使用FTP将文件从本地计算机上传到服务器.当我尝试访问我创建的模块时,它会抛出404错误:
未找到
The requested URL /mymodule was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Run Code Online (Sandbox Code Playgroud)
以下是一些例子:
在使用MAMP的本地计算机上,我使用以下可正常工作的URL:
http://localhost:8080/frontend_dev.php/mymodule
Run Code Online (Sandbox Code Playgroud)
我上传完所有内容后,如果我转到测试服务器URL:
http://my.url.com:8090/
Run Code Online (Sandbox Code Playgroud)
我得到了带有/ sf图像和样式的"项目成功"页面.
但如果我试试
http://my.url.com:8090/mymodule
Run Code Online (Sandbox Code Playgroud)
我得到404错误,好像页面不存在,这使我thik smfony不知道前端模块.
任何帮助?
我正在使用SYmfony 1.4和swift邮件程序通过Sendgrid发送大量电子邮件.
我在某些电子邮件地址上收到RFC合规性错误.
一种解决方案是删除抛出错误的条件,它确实有效,但它涉及更改核心.你如何在站点文件而不是symfony核心中扩展MailboxHeader.php.像这样的东西,但不是因为它不起作用:
class overrideRFCError extends Swift_Mime_Headers_AbstractHeader
{
private function _assertValidAddress($address)
{
if (!preg_match('/^' . $this->getGrammar('addr-spec') . '$/D',
$address))
{
// throw new Swift_RfcComplianceException(
// 'Address in mailbox given [' . $address .
// '] does not comply with RFC 2822, 3.6.2.'
// );
}
}
}
Run Code Online (Sandbox Code Playgroud)
这似乎有点沉重.有没有办法验证电子邮件的RFC合规性.如果是这样,那么我可以从阵列中取消它.
更新07/17/13
我能够对每个地址进行彻底的清理,使其符合RFC标准,从而解决了这个问题.但是,我想知道SwiftMailer中是否存在执行此检查的函数,而不是编写自定义函数.
更新07/18/13
这就是我的工作.我试图尽可能地清理条目.
在名为的变量中加载一组地址 $emailList
在行动中:
$cleanList = sendGridEmailer::validateEmails($emailList);
Run Code Online (Sandbox Code Playgroud)
在sendGridEmailer类中:
// loop and validate each email address
public static function validateEmails($emailList) {
foreach($emailList as $address => $name) { …Run Code Online (Sandbox Code Playgroud) 我使用macports安装了mysql55-server.
我可以通过以下方式成功启动服务器
$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql55-server.plist
Run Code Online (Sandbox Code Playgroud)
并确认我正在运行正确的mysql:
$ which mysql
/opt/local/lib/mysql55/bin/mysql
Run Code Online (Sandbox Code Playgroud)
如果我跑$mysql,我可以成功连接.如果我然后运行:
mysql> show databases;
Run Code Online (Sandbox Code Playgroud)
它显示了两个数据库.
使用Sequel Pro,我可以通过socket连接:
u: root
p: root
Socket: /opt/local/var/run/mysql55/mysqld.sock
Run Code Online (Sandbox Code Playgroud)
连接并加载数据库就好了.
问题是通过127.0.0.1或localhost连接.
如果我尝试使用Sequel Pro中的标准连接进行连接,我会得到:
Unable to connect to host 127.0.0.1, or the request timed out.
Be sure that the address is correct and that you have the necessary privileges, or try increasing the connection timeout (currently 10 seconds).
MySQL said: Can't connect to MySQL server on '127.0.0.1' (61)
Run Code Online (Sandbox Code Playgroud)
所以似乎mysql服务器没有被识别为127.0.0.1.在我的hosts文件中,我将本地主机列为127.0.0.1
127.0.0.1 localhost
255.255.255.255 …Run Code Online (Sandbox Code Playgroud) 我正在使用CSS工作在html linter上.
参考:https://bitsofco.de/linting-html-using-css/
我喜欢突出显示具有内联样式的元素的想法:
*[style] {
color: red !important;
border: 5px solid red !important;
}
Run Code Online (Sandbox Code Playgroud)
但是,我确实有一些必须使用内联样式的实例,即canvas元素.
我已经从lottie-react-web包创建了一个组件。
import React from 'react';
import Lottie from 'lottie-react-web'
import animation from '../../src/animations/anim.json'
const LottieAnim = () => (
<Lottie
options = {{
animationData: animation,
loop: false,
autoplay: true,
}}
width = "60px"
height = "60px"
/>
)
export default LottieAnim
Run Code Online (Sandbox Code Playgroud)
这有效并成功构建。当 DOM 加载时,它会生成具有定义属性的包装器 div。但是,div 中的 svg 没有定义的 viewbox 参数,以及未定义的宽度和高度,以及 svg 中的包含向量。
我试图限制元素拖动像素的距离。我循环遍历每个子元素,将其添加到总和中,并尝试将左侧拖动限制为该数量。
我无法使用父包含,因为可拖动元素实际上并不需要父元素的边界,而是需要每个选项卡的计算宽度。
这是我到目前为止所得到的:
JavaScript
var maxMenuWidth = 0;
$('.tabName').each(function(index, el) {
var menuWidth = $(this).outerWidth();
maxMenuWidth = maxMenuWidth + menuWidth;
});
maxMenuWidth = maxMenuWidth;
console.log(maxMenuWidth);
jQuery("#TabLabels").draggable({
axis: "x",
cursor: "move",
drag: function( event, ui ) {
ui.position.left = Math.min( 0, ui.position.left );
ui.position.left = Math.max( maxMenuWidth, ui.position.left );
}
});
Run Code Online (Sandbox Code Playgroud)
超文本标记语言
<div id="TabLabels" class="ui-draggable">
<span class="tabName">Tab 1</span>
<span class="tabName">Tab 2</span>
<span class="tabName">Tab 3</span>
<span class="tabName">Tab 4</span>
</div>
Run Code Online (Sandbox Code Playgroud)
我可以从以下行限制右拖动:
ui.position.left = Math.min( 0, ui.position.left );
Run Code Online (Sandbox Code Playgroud)
但下一行,
ui.position.left = Math.max( maxMenuWidth, ui.position.left …Run Code Online (Sandbox Code Playgroud) php ×4
jquery ×2
symfony-1.4 ×2
bloodhound ×1
css ×1
doctrine ×1
draggable ×1
git ×1
git-branch ×1
git-commit ×1
html ×1
jquery-ui ×1
json ×1
ldap ×1
ldap-query ×1
localhost ×1
lottie ×1
macports ×1
mysql ×1
mysql-5.5 ×1
osx-yosemite ×1
reactjs ×1
rfc ×1
svg ×1
swiftmailer ×1
symfony1 ×1
typeahead.js ×1