插件要实现的功能。。。。}
//这是获取文本光标位置的jquery插件<script type="text/javascript">
$.fn.extend({
getposition:function( value ){
var elem = this[0]
if (elem&&(elem.tagName=="TEXTAREA"||elem.type.toLowerCase()=="text")) {
if($.browser.msie){
var rng
if(elem.tagName == "TEXTAREA"){
rng = event.srcElement.createTextRange()
rng.moveToPoint(event.x,event.y)
}else{
rng = document.selection.createRange()
}
if( value === undefined ){
rng.moveStart("character",-event.srcElement.value.length)
return rng.text.length
}else if(typeof value === "number" ){
var index=this.position()
index>value?( rng.moveEnd("character",value-index)):(rng.moveStart("character",value-index))
rng.select()
}
}else{
if( value === undefined ){
return elem.selectionStart
}else if(typeof value === "number" ){
elem.selectionEnd = value
elem.selectionStart = value
}
}
}else{
if( value === undefined )
return undefined
}
}
})
</script>
// jquery代码
<script language="JavaScript" type="text/javascript">
$(function(){
$(".text").blur(function(){
$(this).attr('num',$(this).getposition()) //文本框失去焦点时给自定义属性num赋值,用来获取光标位置
})
$(".btn").click(function(){
var num = $(".text").attr("num")//获得光标位置
var text = $(".text").val()//文本值
if(num === undefined)//判断文本框是否以获取焦点,如果没有获取就插入到最后
num = text.length
var text1 = text.substring(0,num)//获得光标前面的文本
var text2 = text.substring(num,text.length)//获得光标后面的文本
var newtext = text1 + $(this).val() + text2//与按钮值拼成新的字符串
$(".text").val(newtext)//给文本框赋值
$(".text").focus()//文本框获取焦点
num = Number(num) + Number($(this).val().length)
$(".text").getposition(num)//重新设置光标位置
})
})
</script>
//html 代码
<body>
<input type="text" class="text" value="我是文本框原来的值"/>
<input name="" class="btn" value="btn1" type="button" />
<input name="" class="btn" value="btn2" type="button" />
</body>
可能还有不足,你完善一下吧
需要准备的材料分别有:电脑、html编辑器、浏览器。
1、首先,打开html编辑器,新建html文件,例如:index.html,并引入jquery。
2、在index.html中的<script>标签,输入jquery代码:
$('input[type="checkbox"]').change(function () {
var a = ''
$('input[type="checkbox"]:checked').each(function () {
if (a !== '') {
a += ','
}
a += $(this).val()
})
$('#a').val(a)
})
3、浏览器运行index.html页面,此时选择内容会自动追加到input输入框中,最多3个。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)