为什么javascript要添加一个随机样式标签?
Why would javascript add a random style tag?
我正在使用我在网上找到的一个脚本来在html表单上添加输入提示。我让它全部工作,但现在的代码是随机生成的一个样式标签,抛出了我的css。代码应该生成如下所示的span标签:
<span id="input-prompt-0" class="input-prompt">Company Name</span>
用于每个文本输入字段。相反,它一直给我这个:
<span id="input-prompt-0" class="input-prompt" style="display: block;">Company Name</span>
知道为什么吗?
代码如下:
$(document).ready(function(){
$('input[type=text][title],input[type=password][title],textarea[title]').each(function(i){
$(this).addClass('input-prompt-' + i);
var promptSpan = $('<span class="input-prompt"/>');
$(promptSpan).attr('id', 'input-prompt-' + i);
$(promptSpan).append($(this).attr('title'));
$(promptSpan).click(function(){
$(this).hide();
$('.' + $(this).attr('id')).focus();
});
if($(this).val() != ''){
$(promptSpan).hide();
}
$(this).before(promptSpan);
$(this).focus(function(){
$('#input-prompt-' + i).hide();
});
$(this).blur(function(){
if($(this).val() == ''){
$('#input-prompt-' + i).show();
}
});
});
});
行$('#input-prompt-' + i).show();
正在修改样式。从jQuery.show的文档:
匹配的元素将立即显示,没有动画。这大致相当于调用。css('display', 'block'),除了显示属性恢复为初始值
我想更突出的问题是为什么这是"抛弃[你的]css"?
这行代码添加了style属性:
$('#input-prompt-' + i).show();
你可以用:
$('#input-prompt-' + i).css("display", "");
这将显示span并消除style属性
问题很可能与您使用。show()和。hide()有关。
这些函数通过改变元素的样式来发挥它们的魔力。
JQuery show()和hide()函数修改的样式
相关文章:
- 从a-z中随机选择一个字母
- 用jquery切换一个随机类
- 如何创建一个随机的计算机选项,除了你已经选择的选项
- 能够获得一个随机生成的目录名
- Javascript 数组随机丢失一个元素
- 我如何让网页在每次使用 Javascript 刷新时随机生成一个新视频
- Javascript从数组中选择一个随机对象集
- 当我点击一个按钮时随机选择一个声音来重现的脚本
- 页面加载时显示一个随机图标
- 我如何得到一个有序的列表,随机吐出列表中的一些
- 如何从包含1000个项目的数组中随机选择一个项目
- 一个在线服务,我可以查询一个随机的历史人物的名字
- Javascript;使用math.random函数随机执行一个操作
- 在Javascript中从数组中挑选一个随机变量
- 尝试使用Javascript在数组中创建一个带有随机选择页面的链接
- Javascript:创建一个随机数学方程数组作为对象,20次
- 如何在javascript中给变量一个随机值
- 按钮被制作成一个图像来执行Javascript随机生成器
- 如何在一个随机化的有序列表中随机化多个无序列表
- 如何从列表中突出显示一个随机单词