javascript style.left返回未定义?
我已将css左选择器的值设置为20%,但未定义 我的代码: 您需要删除错误值javascript style.left返回未定义?,javascript,return,undefined,Javascript,Return,Undefined,我已将css左选择器的值设置为20%,但未定义 我的代码: 您需要删除错误值 $("#item1").click(function(){ console.log(document.getElementById("item1").style.left); }); 在这种情况下,该值是且不是未定义的 如果你不想得到计算出的值,你会这样做 $("#item1").click(function(){ var element = document.getElementByI
$("#item1").click(function(){
console.log(document.getElementById("item1").style.left);
});
在这种情况下,该值是且不是未定义的
如果你不想得到计算出的值,你会这样做
$("#item1").click(function(){
var element = document.getElementById("item1");
console.log( window.getComputedStyle( element ).left );
});
或者使用jQuery
如果你想计算百分比,那么你可以这样做
$("#item1").click(function(){
var parent = $(this).parent().width();
console.log( 100 * $(this).width() / parent );
});
element.style仅包含内联样式或直接应用于该元素的样式
要获取计算样式(包括从样式表继承的样式),可以使用jQuery的:
或者,对于本机解决方案,请参见。,但我的左值仍然是20%,为什么我得到的是空字符串呢?您不能立即得到20%
$("#item1").click(function(){
console.log( $(this).css('left') );
});
$("#item1").click(function(){
var parent = $(this).parent().width();
console.log( 100 * $(this).width() / parent );
});
$('#item1').click(function(){
console.log($(this).css('left'));
});