我观察到一种不寻常的行为.我有一个浮动的对话框,我在其中放置一个图像.我想使用jquery获取图像大小,并将其div容器调整为适当的大小.它运行得相当好,但该功能偶尔会返回零作为图像大小.
$('#dialogueContainer').html('<div class="dialogue"><img src="/photos/' + file + '" id="lightImage" /></div>');
var imageHeight = $('#lightImage').height();
var imageWidth = $('#lightImage').width();
console.log(imageHeight + 'x' + imageWidth); //<-- This occasionally returns "0x0"
Run Code Online (Sandbox Code Playgroud)
我怀疑当jquery试图测量它的高度和宽度时,图像可能没有在DOM中准备好.有什么想法吗?
我正在编写一个简单的测试脚本来了解MySQLi准备好的语句.该脚本将成为在处理结果时需要略微动态的函数的基础.我需要fetch方法作为一个类似于mysql_fetch_array()行为的数组返回.
我知道其中一些方法需要mysqlnd.我检查了phpinfo.Mysqlnd已安装并存在.见截图.

请注意,PDO在我的服务器上可用,但我需要在此时使用此脚本与MySQLi一起使用.!PDO将在本项目的后期进行研究.
require_once(__ROOT__ . '/config.inc.php');
$mysqli = new mysqli($config['db']['server'], $config['db']['username'], $config['db']['password'], $config['db']['database_name']);
$userid = 10;
$stmt = $mysqli->prepare("SELECT username, firstname, lastname FROM maj_user WHERE user_id < ?");
if ($stmt)
{
/* bind parameters for markers */
$stmt->bind_param('i', $userid);
/* execute query */
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_array())
{
echo 'We selected "' . $row['username'] . ' (' . $row['firstname'] . ' ' . $row['lastname'] . ')"' . PHP_EOL;
}
$result->close();
}
$mysqli->close();
Run Code Online (Sandbox Code Playgroud)
上面的代码导致:
致命错误 …
我无法让这个复杂的选择为我工作.
这是我的结构图. http://www.bandwise.com/files/tester_db.png
结构和样本数据的SQL文件. http://www.bandwise.com/files/tester_db.sql
简而言之,我有一个叫做"租约"的桌子和一个叫做"公寓"的桌子.租赁和公寓之间存在一对多的关系.公寓确定了他们所属的美国州和郡.因此,给定的租约可能有许多分散在全国各地的公寓.
我需要做的是仅选择包含一个或多个公寓的美国州并返回适用的租约数量.由于某些租赁可能在多个州拥有公寓,因此租赁可能需要计入多个州.
这是我正在使用的测试查询.
SET @timenow = 1360855314;
SELECT l.lid, c.aid, c.leaseid, c.serialnum, c.state, c.county
FROM leases l, apartments c
WHERE c.leaseid = l.lid
AND l.closebidding > @timenow AND l.status = 1;
Run Code Online (Sandbox Code Playgroud)
我在这里可以看到,我在州#1(德克萨斯州)有6个租约,在州#2(路易斯安那州)有2个租约.我如何从州表向外查询根据公寓所在地获得租约数量?
回报应该是这样的.
---------------------------
| state | total |
---------------------------
| Texas | 6 |
---------------------------
| Louisiana | 3 |
---------------------------
Run Code Online (Sandbox Code Playgroud) 我知道IE8很痛苦,但我从来没有见过它给我带来这样的麻烦.我要做的就是定义一个Javascript对象,它会导致错误,阻止所有脚本在页面上工作.
错误是"预期的标识符,字符串或数字",表示问题发生在我定义下面的属性"class"的地方.我看过无数的脚本以这种方式定义对象,那么为什么IE8会呕吐呢?
我将有问题的代码隔离了.将其置于HTML页面的头部并在IE8中运行将导致我看到的问题.
<script type="text/javascript" language="javascript">
var atts = {class: "trigger"};
</script>
Run Code Online (Sandbox Code Playgroud) 我有一个附加到jQuery操作的按钮输入,它将iframe写入DOM.iframe指向一个PHP脚本,它汇编了一个用于强制下载的Excel文件.
此按钮在桌面硬件上运行良好,但最新版本的Mac OS X for iPhone会导致此脚本将Javascript错误抛出到浏览器控制台,并且似乎无法将iframe插入DOM.我在iOS v10.3.3和v11.0.1上复制了错误.
iOS v10.3.3引发以下Javascript错误:
的SecurityError(DOM异常18):沙盒访问冲突:在阻止框架" :// WWW [删除] .COM HTTPS.在访问的帧", " HTTPS:// WWW [删除] .COM ".正在访问的框架是沙箱,并且缺少"allow-same-origin"标志.在HTTPS:// WWW [删除]的.com /路径/ jquery的/ jquery.min.js第3行
iOS v11.0.1引发以下内容:
SecurityError(DOM例外18):阻止具有原点" https:// www.[删除] .com "的帧访问具有原点"x-apple-ql-id:// 256b58b2-0821-4779-810b-的帧" 5493faa49e07" .请求访问的帧具有"https"协议,被访问的帧具有"https"协议.协议必须匹配.在 HTTPS:// WWW [删除]的.com /模块/ jquery的/ jquery.min.js第3行
这是我正在使用的Javascript.
var LOCAL = {
execReport : function()
{
// Get form inputs
var t = $('select[name="t"] option:selected').val();
var s = $('select[name="s"] option:selected').val();
// Write the iframe into the DOM
var iframe = $('<iframe></iframe>', …Run Code Online (Sandbox Code Playgroud) 我正在尝试在启动期间添加活动指示器.我确实有一个发射图像,但我宁愿只有一个指标.我将以下内容添加到我的应用代理中,但指标未显示.
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// *******Create activity indicator****
UIActivityIndicatorView *activity = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(225, 115, 30, 30)];
[activity setBackgroundColor:[UIColor clearColor]];
[activity setActivityIndicatorViewStyle: UIActivityIndicatorViewStyleGray];
[window addSubview: activity];
[activity release];
[activity startAnimating];
activity.hidden = FALSE;
// *******End activity indicator****
MainViewController *viewController = [[MainViewController alloc] initWithNibName:@"MainView" bundle:nil];
self.mainViewController = viewController;
[window addSubview:[mainViewController view]];
mainViewController.view.frame = CGRectMake(0, 20, 320, 411);
[window addSubview:[rootController view]];
[window makeKeyAndVisible];
#if !TARGET_IPHONE_SIMULATOR
[application registerForRemoteNotificationTypes:
UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound];
#endif
application.applicationIconBadgeNumber = 0;
// Hide indicator …Run Code Online (Sandbox Code Playgroud)