Jquery 类型为'的参数;字符串|数字|字符串[]和#x27;不可分配给类型为';字符串|编号|
我编写了ajQuery代码来确定高度和宽度,并单击functionality。代码如下所示:Jquery 类型为'的参数;字符串|数字|字符串[]和#x27;不可分配给类型为';字符串|编号|,jquery,Jquery,我编写了ajQuery代码来确定高度和宽度,并单击functionality。代码如下所示: $(document).ready(function(){ console.log("Jquery is working!"); adjustBar(); $(window).on('resize', function() { adjustBar(); }) $('#height').on('input change', funct
$(document).ready(function(){
console.log("Jquery is working!");
adjustBar();
$(window).on('resize', function() {
adjustBar();
})
$('#height').on('input change', function() {
var height = $(this).val();
if (height >= 30) {
var leftOffset = (Math.tan(45 * (Math.PI / 180)) * (height / 2) + 3) * -1;
$('.steps').css('height', height).css('line-height', height + "px").css('left', leftOffset + "px");
adjustBar();
}
});
$('.steps').on('click', function() {
$('.steps').removeClass('active');
$(this).addClass('active');
})
});
function adjustBar() {
var items = $('.steps').length;
var elHeight = $('.steps').height() / 2; //Division by 2 because each pseudo which is skewed is only 50% of its parent.
var skewOffset = Math.tan(45 * (Math.PI / 180)) * elHeight;
var reduction = skewOffset + ((items - 1) * 4);
var leftOffset = $('.steps').css('left').replace('px', '');
var factor = leftOffset * (-1) - 2;
$('.steps').css({
'width': '-webkit-calc((100% + 4px - ' + reduction + 'px)/' + items + ')'
}); // 4px for borders on either side
$('.steps:first-child, .steps:last-child').css({
'width': '-webkit-calc((100% + 4px - ' + reduction + 'px)/' + items + ' + ' + factor + 'px)'
}); // 26px because to make up for the left offset. Size of last-child is also increased to avoid the skewed area on right being shown
$('.steps span').css('padding-left', (skewOffset + 15) + "px");
$('.steps:first-child span, .steps:last-child span').css({
'width': '-webkit-calc(100% - ' + factor + 'px)'
});
}
运行该代码时,会出现以下错误:
错误TS2362:算术运算的左侧必须是“any”、“number”、“bigint”或枚举类型。
事件查看器/event viewer.component.ts(34,35):错误TS2345:类型为“string | number | string[]”的参数不能分配给类型为“string | number |的参数((this:HTMLElement,index:number,value:string)=>string | number | void)。
类型“string[]”不可分配给类型“string | number |”((this:HTMLElement,index:number,value:string)=>string | number | void)”。
类型“string[]”不可分配给类型“string”。
事件查看器/event viewer.component.ts(49,20):错误TS2362:算术运算的左侧必须是“any”、“number”、“bigint”或枚举类型
似乎
高度
、宽度
和左偏移量
都被视为字符串,但它们应该是通过元素在网页中的位置计算的数值。如何修复这些错误 您应该将字符串值转换为数字。
您可以使用:
var height=Number($(this.val())代码>您是否尝试将值强制转换为数字?例如var height=Number($(this.val())代码>啊!我没有想到这个角色,谢谢:)它解决了问题吗?然后我可以把它作为答案。是的,它解决了问题。。。