使用 jQuery :带有下一个/上一个箭头的选定选择器
using jquery :selected selector with next / previous arrows
我正在尝试为在线font
预览目的设置小型Web应用程序。直到现在一切都很好。我已经制作了选择框(工作正常),测试文本区域(工作正常),字体大小器(工作正常),粗体,斜体复选框...(工作正常),其中包含字体列表。当我从选择列表中选择一种字体时,页面上的所有内容(预定义文本)都会更改,这没关系,但我决定添加箭头(下一个和上一个)进行快速更改,这也可以工作,但某些元素不会在按钮单击时更改。
实际问题是什么?
当我从选择列表中选择字体时,一切都会改变,但是当我将这些按钮用于下一个/上一个 H1 时,页面标题不想更改,因为我需要在页面标题中显示字体名称以及页面标题。
这里是 : http://jsfiddle.net/S8PwY/
有人可以检查此脚本并指出我的问题所在:
$(document).ready(function() {
$(".fontpicker").change(function() {
$font = $('.fontpicker option:selected').val();
$('.font_preview').css('fontFamily', $font);
});
$(".fontpicker").change(function() {
$font = $('.fontpicker option:selected').val();
$('.name').css('fontFamily', $font);
});
//min font size
var min = 10;
//max font size
var max = 60;
//grab the default font size
var reset = $('textarea').css('fontSize');
//font resize these elements
var elm = $('textarea');
//set the default font size and remove px from the value
var size = str_replace(reset, 'px', '');
//Increase font size
$('a.fontSizePlus').click(function() {
//if the font size is lower or equal than the max value
if (size <= max) {
//increase the size
size++;
//set the font size
elm.css({
'fontSize': size
});
}
//cancel a click event
return false;
});
$('a.fontSizeMinus').click(function() {
//if the font size is greater or equal than min value
if (size >= min) {
//decrease the size
size--;
//set the font size
elm.css({
'fontSize': size
});
}
//cancel a click event
return false;
});
//Reset the font size
$('a.fontReset').click(function() {
//set the default font size
elm.css({
'fontSize': reset
}
$('.selector').click(function() {
var checked = $(this).is(':checked');
var value = $(this).attr('value');
if (checked) {
$('.font_preview, textarea').addClass(value);
} else {
$('.font_preview, textarea').removeClass(value);
}
});
$("#next").click(function() {
$("#mycars").val($("#mycars > option:selected").next().val());
$font = $('.fontpicker option:selected').val();
$('.font_preview').css('fontFamily', $font);
$('.name').css('fontFamily', $font);
});
$("#prev").click(function() {
$("#mycars").val($("#mycars > option:selected").prev().val());
$font = $('.fontpicker option:selected').val();
$('.font_preview').css('fontFamily', $font);
$('.name').css('fontFamily', $font);
});
$("select").change(function () {
var str = "";
$("select option:selected").each(function () {
str += $(this).text() + " ";
});
$("title,h1.name,th.name").text(str);
})
.trigger('change');
代码可以按如下方式合并和修复:
$(".fontpicker").change(function() {
$font = $('.fontpicker option:selected').val();
$('.name').css('fontFamily', $font);
$('.font_preview').css('fontFamily', $font);
$("title,h1.name,th.name").text($font);
}).change();
$("#next").click(function() {
$(".fontpicker").val($(".fontpicker >option:selected").next().val()).change();
});
$("#prev").click(function() {
$(".fontpicker").val($(".fontpicker >option:selected").prev().val()).change();
});
查看更新的小提琴
您可以在每个click
中触发change
事件以进行更改:
$("#next").click(function() {
$("#mycars").val($("#mycars > option:selected").next().val()).trigger("change");
});
$("#prev").click(function() {
$("#mycars").val($("#mycars > option:selected").prev().val()).trigger("change");
});
演示:http://jsfiddle.net/u7dDw/
相关文章:
- 为什么 .focus() 不起作用,而 .css(“color”,“red”) 在同一个选择器上起作用
- casperjs-css选择器存在,但当单击它时会引发“”;CasperError:无法在不存在的选择器“”上调度mou
- 更改日期选择器上的日期格式
- 原型中漂亮的代码,如何省略'不是函数'空结果选择器上的错误
- 为什么JQueryshow()函数只对带有选择器的一个(而不是所有)元素起作用
- 如何制作一个具有多个选择器的jQuery插件,在每个选择器上分别进行匹配
- 如何在日期选择器上禁用以前的所有日期
- Shopify多选择器上的默认选择
- Jquery语法错误,id选择器上的表达式无法识别
- 设置为在没有父级和子级的其他选择器上可见
- 使用 ajax 和 JSP Servlet 根据选择的上一个下拉列表填充下拉列表
- JQuery 从类选择器上的数据属性创建一个数组
- jQuery - 如何在追加的选择器上链接事件
- 在jquery日期选择器上突出显示多个日期
- 如何在日期选择器上获取日期
- 序列化表单选择器上的对象
- 如何在 UI-日期选择器中选择日期 在其他 UI 日期选择器上
- j查询错误选择器上的点击功能
- jQuery日期选择器上一个和下一个按钮没有显示,如何指向css中的主题文件夹图像
- jQuery插件只在最后一个选择器上工作