我正在尝试创建一个按钮,这样当用户点击它时,它会在按住鼠标按钮时改变其样式.如果在移动浏览器中触摸它,我也希望它以类似的方式改变它的风格.对我来说看似显而易见的事情是使用CSS:active伪类,但这不起作用.我尝试过:专注,但它也没有用.我试过了:悬停,它似乎工作,但它把我的手指从按钮上移开后保持了风格.所有这些观察都在iPhone 4和Droid 2上.
有没有办法在移动浏览器(iPhone,iPad,Android,还有希望其他人)上复制效果?现在,我正在做这样的事情:
<style type="text/css">
#testButton {
background: #dddddd;
}
#testButton:active, #testButton.active {
background: #aaaaaa;
}
</style>
...
<button type="button" id="testButton">test</button>
...
<script type='text/javascript' src='http://code.jquery.com/jquery-1.6.1.min.js'></script>
<script type='text/javascript'>
$("*").live("touchstart", function() {
$(this).addClass("active");
}).live("touchend", function() {
$(this).removeClass("active");
});
</script>
Run Code Online (Sandbox Code Playgroud)
:active伪类适用于桌面浏览器,活动类适用于触摸浏览器.
我想知道是否有更简单的方法来做到这一点,而不涉及Javascript.
我在某处读过CSS表达式已弃用,甚至不应该使用.我从未听说过他们,于是决定去看看.我发现了一个代码示例,即使您滚动,也会在屏幕上的同一位置保留浮动元素.
<html>
<style>
#fixed {
position:absolute;
left:10px;
top:expression(body.scrollTop + 50 + "px");
background:white;
border:1px solid red;}
</style>
<body>
<p id="fixed">Here is some text, which is fixed.</p>
<p>
[many times: "stuff <br/>"]
</p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这让我想起了网页底部有"共享栏"和内容的网站.
所以...
通常当我浏览互联网时,我发现人们通常使用CSS黑客来使他们的网站在所有浏览器中看起来都一样.就个人而言,我发现找到所有这些黑客并测试它们是非常耗时的; 您所做的每项更改都必须在4个以上的浏览器中进行测试,以确保它不会破坏其他任何内容.
大约一年前,我浏览了互联网上其他主要网站正在使用的内容(雅虎,谷歌,BBC等),并发现其中大多数都在进行某种形式的浏览器检测(JS,HTML if语句,基于服务器).我也开始这样做了.在我最近工作的几乎所有网站上,我使用jQuery,所以我使用内置的浏览器检测.
您使用或不使用其中任何一种是否有原因?
我正在尝试使用XMLHttpRequest在XSS请求中设置Cookie.
我找到了XMLHttpRequest规范,4.6.2-5节似乎确实建议不允许设置Cookie,Cookie2和其他一些标题,但我希望有一个解决方法.
我的(jQuery)代码如下所示,但由于未设置cookie,因此生成的查询失败.
$.ajax( {
type : "POST",
url : URL,
data: SOAP_INBOX_MAIL_QUERY,
dataType : "xml",
async: false,
beforeSend : function(xhr) {
var cookie = credentials["COOKIE"];
console.info( "adding cookie: "+ cookie );
xhr.setRequestHeader('Cookie', cookie);
},
success : function(data, textStatus, xmLHttpRequest){
},
error : function(xhr, ajaxOptions, thrownError) {
credentials = null;
}
});
Run Code Online (Sandbox Code Playgroud) 据我所知,pageXOffset/pageYOffset自Netscape 4时代以来,物业已经可用.
似乎scrollX/scrollY大概是在Netscape 6中引入的.
替代问题:
Q2.是否有一个浏览器实现scrollX/scrollY但不支持pageXOffset/pageYOffset?
我将添加第三个问题,因为没有人能够回答以前的问题:
Q3.scrollX/scrollY被添加到CCSOM的最新编辑器草稿中,工作草案只获得了pageXOffset/pageYOffset,为什么它们都保留了这两个属性?
我看到了JavaScript代码with.这有点令人困惑.它做了什么以及如何正确使用?
with (sObj) return options[selectedIndex].value;
Run Code Online (Sandbox Code Playgroud) 由于IE在版本10中摆脱了条件评论,我迫切需要找到一个专门针对IE10的"CSS hack".请注意,它必须是被"黑客"而不是CSS属性的选择器.
在Mozilla中,您可以使用:
@-moz-document url-prefix() {
h1 {
color: red;
}
}
Run Code Online (Sandbox Code Playgroud)
在Webkit中,您通常会这样做:
@media screen and (-webkit-min-device-pixel-ratio:0) {
h1 {
color: blue;
}
}
Run Code Online (Sandbox Code Playgroud)
我如何在IE10中做类似的事情?
如果我在页面上有很多DOM并且我将它们全部设置为显示:none,则浏览器仍然会快速响应(滚动速度很快,页面感觉很快).
但是,如果我可见:隐藏元素,浏览器就像它们全部在屏幕上绘制一样慢.
有人可以详细解释为什么会这样吗?
一个多星期拉出我的头发.
使用:
Jquery 1.9.1
使用类似于JSON示例的malsup表单插件:http://malsup.com/jquery/form/#json
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" /> with of without same error
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Run Code Online (Sandbox Code Playgroud)
Internet Explorer(8/9/10)将随机中止AJAX POST请求(非常随机)
通过Abort,我的意思是,NOTHING通过http"发送" - 它只是中止然后让眼泪流泪.
URL 我的网址是正确的
结果(已中止)字面读取(已中止)
输入空白 - 这里没什么
收到0B
拍摄202ms
启动器(待定)它从字面上读取(待定)
请求标头为空
请求体是空的
eveything是空的
但是在Timings选项卡下,我注意到它按顺序开始等待启动开始Gap DOMContentLoaded(事件)加载(事件)
应该 开始两次?或者我以某种方式提交请求两次,这是导致中止.
我会说,成功的POSTS 在时间选项卡下有两次启动.
我也是console.log错误并得到:
xmlhttprequest.ReadyState 4
xmlhttprequest.Status:12019
这当我点击提交第二次它的工作原理.顾客不会喜欢这个......
$('#formId').ajaxForm( {
dataType : 'json',
cache: false,
beforeSend: beforeGenericPostForm,
success : FormResponse,
error: genericError
});
$('#formSubmitId').click(function(e){
e.preventDefault();
//perform some …Run Code Online (Sandbox Code Playgroud) 在suckerfish的儿子下拉菜单:
http://www.htmldog.com/articles/suckerfish/dropdowns/example/
你看到这个规则
w\idth: 13.9em;
Run Code Online (Sandbox Code Playgroud)
这不能是一个错字,因为它在css中出现不同的时间.它是为了什么?