0
我使用插件在大约字体系列的jQuery:在jQuery中使用插件时错误无法获得值?
/**
* Font selector plugin
* turns an ordinary input field into a list of web-safe fonts
* Usage: $('select').fontSelector();
*
* Author : James Carmichael
* Website : www.siteclick.co.uk
* License : MIT
*/
jQuery.fn.fontSelector = function() {
var fonts = new Array(
'Arial,Arial,Helvetica,sans-serif',
'Arial Black,Arial Black,Gadget,sans-serif',
'Comic Sans MS,Comic Sans MS,cursive',
'Courier New,Courier New,Courier,monospace',
'Georgia,Georgia,serif',
'Impact,Charcoal,sans-serif',
'Lucida Console,Monaco,monospace',
'Lucida Sans Unicode,Lucida Grande,sans-serif',
'Palatino Linotype,Book Antiqua,Palatino,serif',
'Tahoma,Geneva,sans-serif',
'Times New Roman,Times,serif',
'Trebuchet MS,Helvetica,sans-serif',
'Verdana,Geneva,sans-serif'
);
return this.each(function(){
// Get input field
var sel = this;
// Add a ul to hold fonts
var ul = $('<ul class="fontselector"></ul>');
$('body').prepend(ul);
$(ul).hide();
jQuery.each(fonts, function(i, item) {
$(ul).append('<li><a href="#" class="font_' + i + '" style="font-family: ' + item + '">' + item.split(',')[0] + '</a><input type="hidden" id="select_font_family" value="'+item+'" /></li>');
// Prevent real select from working
$(sel).focus(function(ev) {
ev.preventDefault();
// Show font list
$(ul).show();
// Position font list
$(ul).css({ top: $(sel).offset().top + $(sel).height() + 4,
left: $(sel).offset().left});
// Blur field
$(this).blur();
return false;
});
$(ul).find('a').click(function() {
var font = fonts[$(this).attr('class').split('_')[1]];
$(sel).val(font);
$(ul).hide();
return false;
});
});
});
}
和HTML:
<input type="text" value="" id="select_font_family" />
使用jQuery:
$('input#select_font_family').fontSelector();
$('ul.fontselector').find('a').click(function() {
var test = $('input#select_font_family').val();
alert(test);
});
当我点击的结果不能得到价值,如何解决它?
你在控制台中得到任何错误? 'ul.fontselector'是正确的选择器吗?你有没有包含jquery.js?可能有许多原因。 – 2012-02-24 08:54:35
@RoryMcCrossan:我已经包含jquery.js, – 2012-02-24 08:55:37
你不断的双重包装jQ元素。即'$(ul)' - >'ul' – elclanrs 2012-02-24 08:59:45