私はフォントファミリについての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:jQueryを使って
<input type="text" value="" id="select_font_family" />
:
$('input#select_font_family').fontSelector();
$('ul.fontselector').find('a').click(function() {
var test = $('input#select_font_family').val();
alert(test);
});
を私は上をクリックすると、その結果であるから値を取得することはできませんどのようにそれを修正するには?
コンソールですべてのエラーを取得していますか? 'ul.fontselector'は正しいセレクターですか? jquery.jsが含まれていますか?いくつかの理由が考えられます。 –
@RoryMcCrossan:jquery.jsを含めました。 –
は、常にJQ要素を二重にラップしています。すなわち '$(ul)' - > 'ul' – elclanrs