判断字符串是像素还是百分比,然后除以2
Tell if string is pixels or percent then divide by two
所以我有一个函数,允许用户定义自定义宽度像素或百分比。
问题是我需要得到他们提供的数量的一半。下面是我正在尝试做的一个例子:
用户输入----------预期结果
50% 25%
300px 150px
任何帮助将不胜感激!
这是可行的,尽管您可能应该首先验证他们的输入。
parseInt(str) / 2 + str.match(/(%|px)$/)[0]
在没有验证的情况下,如果输入不是以%
或px
结束(不能做null[0]
),则抛出错误。相反,如果您希望将丢失或无法识别的单元默认处理为%
,则可以这样做:
parseInt(str) / 2 + (str.match(/(%|px)$/)||["%"])[0]
使用基于regex的String.replace
和回调:
"50px".replace(/('d+)(%|px)/, function (_, value, unit) {
return String(value / 2) + unit;
});
// returns 25px
相关文章:
- 让文本输入幻灯片显示输入时的新文本输入?然后向后滑动
- Javascript运行php文件,然后下载文件
- 如何将屏幕分辨率乘以 80%,然后在代码中使用
- 弹出窗口出现,然后退出
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 将值输入到对象,然后该对象推送到数组
- 如何临时暂停浏览器渲染,然后恢复整个页面
- JS:检查URL中的参数,然后迭代一个参数为var的函数
- 滚动然后捕捉到顶部而不是取消捕捉
- 如果宽度是百分比,如何设置以px为单位的图像高度
- AngularJS加载JSON数据,然后从中解析/加载HTML
- 有没有一个抽象层,这样我就可以集成一次,然后使用pusher、pubnub或faye
- Canvas+svg路径动画,在路径中的特定点暂停一段时间,然后继续
- 如果30秒未单击,请应用CSS一次,将其删除,然后重新迭代
- 点击相同的按钮打开模型,然后提交表单
- 使用javascript可以设置css动画的当前百分比
- ThreeJS将画布中的文本渲染为纹理,然后应用于平面
- 使用图像滚动达到页面中的最大内容,然后应该使用窗口百分比隐藏图像
- 如何使任何地方的页面可点击,然后看看他们点击的页面css百分比
- 判断字符串是像素还是百分比,然后除以2